Bonjour
La donnée est écrite en dur dans le script Game_Actor, à la ligne 653 :
1
2
3
4
5
6
7
| #--------------------------------------------------------------------------
# * Get Base Value for Floor Damage
#--------------------------------------------------------------------------
def basic_floor_damage
return 10
end
|
Donc va falloir passer par un script pour changer ça.
Edit :
Tiens, je m'ennuyais, donc je t'ai fais le script en question. :3
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
| #==============================================================================
# ** Choose Floor Damage
#------------------------------------------------------------------------------
# Author : Sihn
# Version : 1.1
#==============================================================================
# Utilisation :
# Dans le cadre "note" du tileset de votre choix, ajoutez des
# lignes du modèle suivant :
# floorDamage : tag=dégats
# Par exemple, si vous mettez une ligne :
# floorDamage : 1=30
# alors, tous les tiles qui infligent des dégats et avec le tag 1
# infligeront 30 points de dégats.
#==============================================================================
FloorDamageKey = "floorDamage"
class Game_Map
attr_reader :tiles_parameters
alias loadTilesParameters_setup setup
def setup(map_id)
loadTilesParameters_setup(map_id)
@tiles_parameters = {}
lines = $data_tilesets[@tileset_id].note.split("\r\n")
lines.each { |line|
line = line.split("#")[0]
next if (line == nil)
parameter = line.split(":")
next if (parameter.size != 2)
@tiles_parameters[parameter[0].downcase.strip] = parameter[1]
}
end
end
class Game_Actor < Game_Battler
alias choose_basic_floor_damage basic_floor_damage
def basic_floor_damage
line = $game_map.tiles_parameters[FloorDamageKey.downcase]
return choose_basic_floor_damage if line == nil
values = line.split("=")
return choose_basic_floor_damage if (values.size != 2)
tag = values[0].to_i
damages = values[1].to_i
if ($game_map.terrain_tag($game_player.x, $game_player.y) == tag)
return damages
else
return choose_basic_floor_damage
end
end
end
|
A placer dans sous "Matérials", comme d'hab. Au dessus de "Main", et au dessous des autres scripts.
Une fois le script placé, va dans l'éditeur de tileset.
Dans la partie "note", rajoute la ligne suivante :
Citation:
en changeant tag par le numéro de tag de ton choix, et dégâts par le nombre de dégâts que devra faire ce terrain.
Attention, pour faire des dégâts, le terrain doit toujours être marqué comme terrain blessant.
Tu peux mettre autant de ligne de ce genre que tu veux.
|