Project1

标题: 最后一击 [打印本页]

作者: RXVincent    时间: 2008-9-1 04:24
标题: 最后一击
额,在战斗结束时,怎样判定谁给予了敌人队伍的最后一个敌人的最后一击? [LINE]1[LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 熊猫    时间: 2008-9-1 05:02
{/hx}都给一锤子不就OK了。。最后活着的承受伤害
作者: RXVincent    时间: 2008-9-1 05:05
以下引用熊猫于2008-8-31 21:02:25的发言:

都给一锤子不就OK了。。最后活着的承受伤害

…………不明白
作者: 熊猫    时间: 2008-9-1 05:07
{/fd}抱歉看错了。。这个我不知道。。
作者: dna_7086    时间: 2008-9-2 22:05
提示: 作者被禁止或删除 内容自动屏蔽
作者: RXVincent    时间: 2008-9-3 04:30
这个用来弄类似空轨中的战斗结算画面的其中一部分。
作者: dbshy    时间: 2008-9-3 04:44
以下引用RXVincent于2008-9-2 20:30:38的发言:

这个用来弄类似空轨中的战斗结算画面的其中一部分。


我怎么不知道空轨有这个...

你用的什么战斗系统,不说战斗系统,就突然问 = =
作者: dna_7086    时间: 2008-9-3 04:47
提示: 作者被禁止或删除 内容自动屏蔽
作者: 灯笼菜刀王    时间: 2008-9-3 11:03
根据7086君的思路,换个地方想~~

用个迭加式把这个TROOP敌人的所有HP相加,然后在伤害计算公式那里判断,当DAMAGE >= HP总量的时候,输出攻击者ID应该就可以了嘛~~~当然,要在角色行动前刷新这个HP总量。

实验型脚本 在GAME BATTLE伤害判断下面加上
allhp = 0
$game_troop.enemy.each do |enemy|
allhp += enemy.hp
end
if self.damage >= allhp
  $game_variables[1] = attacker.id
end

变量1就是最后一刀的角色ID -。-
特技就换成 = user.id

声明:未实验....... [LINE]1,#dddddd[/LINE]系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~ [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: zxc3891777    时间: 2008-9-4 16:44
656565 [LINE]1,#dddddd[/LINE]版主对此帖的评论:『可能是我理解能力有限,阁下的暗号我怎样也解读不到,所以只好当作是恶意灌水来处理了...』,积分『-5』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
作者: 一醉倾城    时间: 2008-9-4 17:59
    LS罐水!
作者: RXVincent    时间: 2008-9-7 19:07
在# HP 的伤害计算那里加,显示$game_troop.enemy.each do |enemy| 错误
作者: cmzjbczzf    时间: 2008-9-7 19:09
去看看《雨后的声音》吧

那个有最后一击者经验比其他人多的设定
作者: RXVincent    时间: 2008-9-12 04:25
自顶一下
作者: a504181301    时间: 2008-9-23 20:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: 灯笼菜刀王    时间: 2008-9-23 20:46
- -迭加式不让用,就用最传统的循环试试咯
换成
allhp = 0
for i in 0..8
unless $game_troop.enemies.hidden
  allhp += $game_troop.enemies.hp
end
end
$game_variables[1] = attacker.id if self.damage >= allhp

同样未测试-。-....
作者: RXVincent    时间: 2008-9-27 05:52
以下引用灯笼菜刀王于2008-9-23 12:46:17的发言:

- -迭加式不让用,就用最传统的循环试试咯
换成
allhp = 0
for i in 0..8
unless $game_troop.enemies.hidden
allhp += $game_troop.enemies.hp
end
end
$game_variables[1] = attacker.id if self.damage >= allhp

同样未测试-。-....

谢谢了,国庆试一下先,话说刀叔有时间上网吗?
作者: dbshy    时间: 2008-9-28 00:58
以下引用灯笼菜刀王于2008-9-23 12:46:17的发言:

- -迭加式不让用,就用最传统的循环试试咯
换成
allhp = 0
for i in 0..8
unless $game_troop.enemies.hidden
allhp += $game_troop.enemies.hp
end
end
$game_variables[1] = attacker.id if self.damage >= allhp

同样未测试-。-....


不是不让用,是你少打了个字母....

而且不是迭加式,是 迭代器

其实FOR 和 EACH 差不多,好象EACH快一点,没什么传统之分

最后赞一下思路,很不错



作者: RXVincent    时间: 2008-9-28 04:50
以下引用灯笼菜刀王于2008-9-3 3:03:45的发言:

根据7086君的思路,换个地方想~~

用个迭加式把这个TROOP敌人的所有HP相加,然后在伤害计算公式那里判断,当DAMAGE >= HP总量的时候,输出攻击者ID应该就可以了嘛~~~当然,要在角色行动前刷新这个HP总量。

实验型脚本 在GAME BATTLE伤害判断下面加上
allhp = 0
$game_troop.enemy.each do |enemy|
allhp += enemy.hp
end
if self.damage >= allhp
$game_variables[1] = attacker.id
end

变量1就是最后一刀的角色ID -。-
特技就换成 = user.id

声明:未实验.......

系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~

把enemies打成enemy了,改正后可以了
作者: 灯笼菜刀王    时间: 2008-9-28 05:04
以下引用dbshy于2008-9-27 16:58:41的发言:


以下引用灯笼菜刀王于2008-9-23 12:46:17的发言:

- -迭加式不让用,就用最传统的循环试试咯
换成
allhp = 0
for i in 0..8
unless $game_troop.enemies.hidden
allhp += $game_troop.enemies.hp
end
end
$game_variables[1] = attacker.id if self.damage >= allhp

同样未测试-。-....



不是不让用,是你少打了个字母....

而且不是迭加式,是 迭代器

其实FOR 和 EACH 差不多,好象EACH快一点,没什么传统之分

最后赞一下思路,很不错


-。-什么叫法没去记...这个方法是禾西老大教我的,使用没几次~~很不熟悉- -~  我还是对FOR有爱,不过嘛,根据脚本法,什么方法快就用什么方法,-。-所以还是用那个吧,

嘛,楼主帮我改正了,省事了耶~
作者: RXVincent    时间: 2008-9-28 06:04
你还好说--|||




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