Project1

标题: 关于变量问题 [打印本页]

作者: 间桐樱    时间: 5 天前
标题: 关于变量问题
本帖最后由 间桐樱 于 2025-1-6 19:22 编辑

def def process_action
  $game_variables[1002] = $game_troop.dead_members.size

def process_action_end
  $game_variables[1001] += $game_troop.dead_members.size - $game_variables[1002] if @subject.id == 1

  def battler_add_ability(id)
    battler_add = Array.new
    cheak_note = ""
    cheak_note = @note if @note
    when 14
      #歪曲力场
      read_arr = Array.new
      while cheak_note do
        value = 0
        cheak_note.match(/<歪曲力场\s?(\d+)\s?>/)
        value = $1.to_i + $game_variables[1001] if $1 —— $game_variables[1001] 是每击败一名敌人+1,但这里只读取整数,不读取变量肿么办
        read_arr.push(value)
        cheak_note = $'
      end
      battler_add = read_arr.max
作者: soulsaga    时间: 5 天前
本帖最后由 soulsaga 于 2025-1-7 03:22 编辑

能不能说具体些
你的$1是啥?
作者: 背棺走的骷髅    时间: 4 天前
改个计算方式,具体的描述不会,多写个加量和总计配合也许就好了,之后要算别的也能读吧。
作者: 间桐樱    时间: 4 天前
soulsaga 发表于 2025-1-6 22:17
能不能说具体些
你的$1是啥?

那是捕捉护盾数值的,比如<歪曲力场 100>,$1就是这个100,我是想这个基础数值上增加变量,让护盾随战斗不断变高
作者: 间桐樱    时间: 4 天前
背棺走的骷髅 发表于 2025-1-7 01:07
改个计算方式,具体的描述不会,多写个加量和总计配合也许就好了,之后要算别的也能读吧。 ...

不知道要肿么做
作者: soulsaga    时间: 4 天前
这里只读取整数,不读取变量是指$game_variables[1001]?
作者: 间桐樱    时间: 4 天前
soulsaga 发表于 2025-1-7 13:58
这里只读取整数,不读取变量是指$game_variables[1001]?

嗯,$game_variables[1001]是每击败一名敌人数值+1,我想放在这里,让护盾具备成长性质,不至于后期被淘汰,但是失败
作者: 魔法丶小肉包    时间: 4 天前
$game_variables[1001] += $game_troop.dead_members.size - $game_variables[1002]
然后$game_variables[1002] = $game_troop.dead_members.size
所以$game_variables[1001] += $game_troop.dead_members.size - $game_troop.dead_members.size
....所以$game_variables[1001] += 0那么你在加什么呢....
测试的时候p一下$game_variables[1001]可以更方便的获取到bug出现的点
作者: 间桐樱    时间: 4 天前
魔法丶小肉包 发表于 2025-1-7 15:32
$game_variables[1001] += $game_troop.dead_members.size - $game_variables[1002]
然后$game_variables[1 ...


https://rpg.blue/thread-496243-1-1.html
这也是论坛某位前辈帮忙做出来的代码,避免数值多次增加,不然打败敌人后,数值每回合都会增加
然后,刚刚突发奇想,把护盾套在敌人头上了,发觉不是不读取变量,而是只有敌人读取
敌人和主角都是100护盾,每次击败敌人后主角护盾不变,敌人护盾100+1,+1,+1这到底是为什么?
作者: 间桐樱    时间: 4 天前
再次测试发现问题在 if @subject.id == 1 上,这是用来确定击杀者id的,加上后敌我双方都不读取击杀数量,但不加不行,不然会变成队友击杀敌人,主角护盾增加的奇怪现象
删掉后倒是能读取变量,但却是敌方护盾增加,我方还是不读取,奇怪
作者: soulsaga    时间: 4 天前
间桐樱 发表于 2025-1-7 16:11
再次测试发现问题在 if @subject.id == 1 上,这是用来确定击杀者id的,加上后敌我双方都不读取击杀数量, ...

@subject.id这个..
不分敌我..怪物ID是1的话照样有用
作者: 间桐樱    时间: 4 天前
soulsaga 发表于 2025-1-7 16:51
@subject.id这个..
不分敌我..怪物ID是1的话照样有用

忘了,回头再加个角色判定吧
作者: 背棺走的骷髅    时间: 3 天前
间桐樱 发表于 2025-1-7 16:11
再次测试发现问题在 if @subject.id == 1 上,这是用来确定击杀者id的,加上后敌我双方都不读取击杀数量, ...

可能要给主角和每一位队友包括对方都设置可读取变量(可能各位护盾成长和对方也是作为基础),通常是给对方读取的应该是问题,再加上这个id可能会很巨大,小心到之后难以收尾,具体的不清楚。
如果护盾成长的方式可以再换一种方式读取会不会好一点?可能会导致成长的量失控才想到不一定全是加法来完成(非主角游戏应该要多人合作才能完成吧)
作者: 间桐樱    时间: 前天 09:47
背棺走的骷髅 发表于 2025-1-8 22:29
可能要给主角和每一位队友包括对方都设置可读取变量(可能各位护盾成长和对方也是作为基础),通常是给对 ...

失控应该不至于,我设定的背景是幻想乡,数值普遍都挺高的,而主角又是只小猫咪,前期全当队友挂件捡捡漏,中期才能渐渐起来,再加上我还做了不少无视护盾的直击类能力,比起设定中直接封印我方动作的永远、时停和自身物魔双免的间隙,哪怕刷到十万的护盾值也只是很强,而且刷十万的怪......23333
作者: 背棺走的骷髅    时间: 前天 21:02
间桐樱 发表于 2025-1-9 09:47
失控应该不至于,我设定的背景是幻想乡,数值普遍都挺高的,而主角又是只小猫咪,前期全当队友挂件捡捡漏 ...

挂件就还好,而幻想乡的挂件要怎么挂就是难题了,看似祥和而实际危险对猫来说可能很刺激,也加点猫带一下也许会好点,看起来要去竹林时小心火灾,希望设定没事




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1