❤ 0 Auteur : TheoAllen
Logiciel : RPG Marker VX Ace
Nombre de scripts : 1
Source : http://www.theolized.com/2013/08/theo-minimum-level-equip-requirement.html
Conditions d'utilisation
- Vous devez créditer l'auteur (TheoAllen)
- Vous pouvez utiliser ce script dans des projets commerciaux
- Vous pouvez/éditer le script et le partager tant que vous n'en tirez pas profit
Installation
A placer au-dessus de Main.
Utilisation
Il suffit de définir quel est le niveau requis en note sur l'item. Il vaut mieux préciser le niveau requis dans la définition de l'item.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
| # =============================================================================
# TheoAllen - Minimum Level Equip Requirement
# Version : 1.0c
# Contact : www.rpgmakerid.com ou http://theolized.blogspot.com
# (This script documentation is written in informal indonesian language)
# =============================================================================
($imported ||= {})[:Theo_MinLevelEquip] = true
# =============================================================================
# CHANGE LOGS:
# -----------------------------------------------------------------------------
# 2013.09.21 - Bug fix when optimizing equip
# 2013.08.10 - Bug fix when unequip item
# 2013.08.05 - Finished script
# =============================================================================
=begin
Perkenalan :
Script ini ngebikin setiap equip bisa disetting level minimalnya buat
digunain
Cara penggunaan :
Pasang dibawah material namun diatas main
Gunakan notetag <min level: n> pada note equip. Dimana n adalah level minimal
yang dibutuhkan untuk diequip
Terms of Use :
Credit gw, TheoAllen. Kalo semisal u bisa ngedit2 script gw trus jadi lebih
keren, terserah. Ane bebasin. Asal ngga ngeklaim aja. Kalo semisal mau
dipake buat komersil, jangan lupa, gw dibagi gratisannya.
Utilisation:
Ecrire <min level: n> en note sur l'équipement.(a écrire aussi dans la définition pour le joueur)
ex: <min level: 10>
=end
# =============================================================================
# Tidak ada konfigurasi
# =============================================================================
class << DataManager
alias theo_equip_level_load_db load_database
def load_database
theo_equip_level_load_db
load_equip_minimum_level
end
def load_equip_minimum_level
($data_armors + $data_weapons).compact.each do |equip|
equip.load_minimum_level_req
end
end
end
class RPG::EquipItem < RPG::BaseItem
attr_accessor :minimum_level
def load_minimum_level_req
@minimum_level = 1
self.note.split(/[\r\n]+/).each do |line|
case line
when /<(?:MIN_LEVEL|min level): [ ]*(\d+)>/i
@minimum_level = $1.to_i
end
end
end
end
class Window_EquipItem < Window_ItemList
alias theo_min_equip_level_enable? enable?
def enable?(item)
return theo_min_equip_level_enable?(item) && sufficient_level?(item)
end
def sufficient_level?(item)
return true unless item
return @actor.level >= item.minimum_level
end
end
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# Overwrite Optimize Equipment
#--------------------------------------------------------------------------
def optimize_equipments
clear_equipments
equip_slots.size.times do |i|
next if !equip_change_ok?(i)
items = $game_party.equip_items.select do |item|
item.etype_id == equip_slots<i> &&
equippable?(item) && item.performance >= 0 &&
sufficient_equip_level?(item)
end
change_equip(i, items.max_by {|item| item.performance })
end
end
def sufficient_equip_level?(item)
level >= item.minimum_level
end
end |
|