Project1
标题: 求简化这段将相同敌人名字加序号的脚本[已经解决] [打印本页]
作者: 2357691704 时间: 2017-1-31 08:09
标题: 求简化这段将相同敌人名字加序号的脚本[已经解决]
本帖最后由 2357691704 于 2017-2-1 10:33 编辑
自己写的一段脚本
作用:将同名字的敌人的名字加序号。例如:幽灵、幽灵2、幽灵3。我只写到最多支持六个敌人的显示。
求简化这段脚本,并且如果可以弄成不管多少个敌人都可以显示的就更好了。
脚本使用方法:替换Game_Enemy中的def name----end
敌人名字排序
作者: RyanBern 时间: 2017-1-31 21:01
随手写的,不太满意。
方法是尽量保持 Game_Enemy 然后黑掉 Game_Troop#setup
class Game_Enemy
alias :rb_initialize_20170131 :initialize
def initialize(troop_id, member_index, suffix = "")
rb_initialize_20170131(troop_id, member_index)
@suffix = suffix
end
def name
sprintf("%s%s", $data_enemies[@enemy_id].name, @suffix)
end
end
class Game_Troop
def setup(troop_id)
# Set array of enemies who are set as troops
@enemies = []
@enemy_count = {}
troop = $data_troops[troop_id]
for i in 0...troop.members.size
enemy = $data_enemies[troop.members[i].enemy_id]
if enemy != nil
@enemy_count[enemy.id] ||= 0
suffix = (@enemy_count[enemy.id] += 1).to_s
@enemies.push(Game_Enemy.new(troop_id, i, suffix))
end
end
end
end
class Game_Enemy
alias :rb_initialize_20170131 :initialize
def initialize(troop_id, member_index, suffix = "")
rb_initialize_20170131(troop_id, member_index)
@suffix = suffix
end
def name
sprintf("%s%s", $data_enemies[@enemy_id].name, @suffix)
end
end
class Game_Troop
def setup(troop_id)
# Set array of enemies who are set as troops
@enemies = []
@enemy_count = {}
troop = $data_troops[troop_id]
for i in 0...troop.members.size
enemy = $data_enemies[troop.members[i].enemy_id]
if enemy != nil
@enemy_count[enemy.id] ||= 0
suffix = (@enemy_count[enemy.id] += 1).to_s
@enemies.push(Game_Enemy.new(troop_id, i, suffix))
end
end
end
end
标题我给你改了,原来的有点随便。
作者: 2357691704 时间: 2017-2-1 07:34
本帖最后由 2357691704 于 2017-2-1 07:49 编辑
不过你这好像“1”序号也显示出来了,这样如果只有一个同类敌人的话很违和。
这样就行了:
def name
case @suffix
when "1"
return $data_enemies[@enemy_id].name
else
sprintf("%s%s", $data_enemies[@enemy_id].name, @suffix)
end
end
def name
case @suffix
when "1"
return $data_enemies[@enemy_id].name
else
sprintf("%s%s", $data_enemies[@enemy_id].name, @suffix)
end
end
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |