设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1542|回复: 5
打印 上一主题 下一主题

【已解决】对于ARPG的技能范围理解

[复制链接]
回帖奖励 200 星屑 回复本帖可获得 20 星屑奖励! 每人限 10 次

Lv4.逐梦者

梦石
0
星屑
6286
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
跳转到指定楼层
1
发表于 2022-9-22 14:59:19 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 金芒芒 于 2023-5-30 17:02 编辑

RUBY 代码复制
  1. class Game_Event
  2.   def return_erased2
  3.     return @erased2
  4.   end
  5.   def erase2
  6.     @erased2 = true
  7.   end
  8. end
  9. class ARPG
  10.   def skill
  11.     return @skill
  12.   end
  13. end
  14. #==============================================================================
  15. $wait_H = 0
  16. $wait_H2 = 0
  17. $普通攻击动画ID = 0
  18. #==============================================================================
  19. class Scene_Map
  20. alias update_olc update
  21. def update
  22. update_olc
  23. @ppp = $game_party.actors[0]
  24. #--------------------------------------------------------------------------
  25. # ● 敌人攻击
  26. #--------------------------------------------------------------------------
  27.   for enemy in $game_map.events.values
  28.     next if enemy.return_erased2
  29.     next if enemy.list == nil
  30.     next if enemy.list[0].code != 108
  31.     next if enemy.list[1].parameters[0] != "敌人"
  32. #敌人的攻击力:
  33. @enemy_attack = enemy.list[6].parameters[0].to_i
  34. @enemy_animation = enemy.list[9].parameters[0].to_i
  35. #敌人面向下,攻击角色
  36. $wait_H += 0.1
  37. if $game_player.x == enemy.x and $game_player.y - enemy.y == 1 and enemy.direction == 2
  38. if $wait_H >= 200
  39.   case rand(40)
  40.   when 2
  41.   enemy.animation_id = @enemy_animation
  42. if @ppp.pdef >= @enemy_attack     #当敌人攻击少于角色防御
  43.    $game_switches[31] = true      #显示MISS
  44.    $game_player.damage_pop = true
  45.    Mess_Text.write ("#{@ppp.name}没有受到伤害。")
  46.    $wait_H += 0
  47.    else
  48.     $game_player.damage = @enemy_attack - @ppp.pdef
  49.     $game_player.damage_pop = true
  50.     @ppp.hp -= $game_player.damage
  51.     Mess_Text.write ("#{@ppp.name}受到#{$game_player.damage.to_i}点伤害。")
  52.    $wait_H += 0
  53. end #if
  54. end #if
  55. end #case
  56. end #if
  57. #敌人面向左,攻击角色
  58. if $game_player.x - enemy.x == -1 and $game_player.y == enemy.y and enemy.direction == 4
  59. if $wait_H >= 200
  60.   case rand(40)
  61.   when 2
  62.   enemy.animation_id = @enemy_animation + 1
  63. if @ppp.pdef >= @enemy_attack     #当敌人攻击少于角色防御
  64.    $game_switches[31] = true      #显示MISS
  65.    $game_player.damage_pop = true
  66.    Mess_Text.write ("#{@ppp.name}没有受到伤害。")
  67.    $wait_H += 0
  68.    else
  69.     $game_player.damage = @enemy_attack - @ppp.pdef
  70.     $game_player.damage_pop = true
  71.     @ppp.hp -= $game_player.damage
  72.     Mess_Text.write ("#{@ppp.name}受到#{$game_player.damage.to_i}点伤害。")
  73.     $wait_H += 0
  74. end #if
  75. end #if
  76. end #case
  77. end #if
  78. #敌人面向右,攻击角色
  79. if $game_player.x - enemy.x == 1 and $game_player.y == enemy.y and enemy.direction == 6
  80. if $wait_H >= 200
  81.   case rand(40)
  82.   when 2
  83.   enemy.animation_id = @enemy_animation + 2
  84. if @ppp.pdef >= @enemy_attack     #当敌人攻击少于角色防御
  85.    $game_switches[31] = true      #显示MISS
  86.    $game_player.damage_pop = true
  87.    Mess_Text.write ("#{@ppp.name}没有受到伤害。")
  88.    $wait_H += 0
  89.    else
  90.     $game_player.damage = @enemy_attack - @ppp.pdef
  91.     $game_player.damage_pop = true
  92.     @ppp.hp -= $game_player.damage
  93.     Mess_Text.write ("#{@ppp.name}受到#{$game_player.damage.to_i}点伤害。")
  94.     $wait_H += 0
  95. end #if
  96. end #if
  97. end #case
  98. end #if
  99. #敌人面向上,攻击角色
  100. if $game_player.x == enemy.x and $game_player.y - enemy.y == -1 and enemy.direction == 8
  101. if $wait_H >= 200
  102.   case rand(40)
  103.   when 2
  104.   enemy.animation_id = @enemy_animation + 3
  105. if @ppp.pdef >= @enemy_attack     #当敌人攻击少于角色防御
  106.    $game_switches[31] = true      #显示MISS
  107.    $game_player.damage_pop = true
  108.    Mess_Text.write ("#{@ppp.name}没有受到伤害。")
  109.    $wait_H += 0
  110.    else
  111.     $game_player.damage = @enemy_attack - @ppp.pdef
  112.     $game_player.damage_pop = true
  113.     @ppp.hp -= $game_player.damage
  114.     Mess_Text.write ("#{@ppp.name}受到#{$game_player.damage.to_i}点伤害。")
  115.     $wait_H += 0
  116. end #if
  117. end #if
  118. end #case
  119. end #if
  120. #★★★★
  121. end#for★
  122. #--------------------------------------------------------------------------
  123. # ● 定义旋舞斩
  124. #--------------------------------------------------------------------------
  125. def skill_旋舞斩
  126.   for enemy in $game_map.events.values
  127.     next if enemy.return_erased2
  128.     next if enemy.list == nil
  129.     next if enemy.list[0].code != 108
  130.     next if enemy.list[1].parameters[0] != "敌人"
  131. px = $game_player.x
  132. py = $game_player.y
  133. if (px - enemy.x).abs <= 2 and (py - enemy.y).abs <= 1
  134. case rand(10)  
  135. when 0..8
  136.       enemy.damage = $data_skills[@skill.id].power
  137.       enemy.damage_pop = true
  138. case $game_player.direction
  139.     when 2
  140.     enemy.jump(0, 1)
  141.     when 4
  142.     enemy.jump(-1, 0)
  143.     when 6
  144.     enemy.jump(1, 0)
  145.     when 8
  146.     enemy.jump(0, -1)
  147.     end
  148. when 9
  149.       enemy.damage = $data_skills[@skill.id].power*2
  150.       enemy.damage_pop = true
  151.       enemy.critical = true
  152. case $game_player.direction
  153.     when 2
  154.     enemy.jump(0, 1)
  155.     when 4
  156.     enemy.jump(-1, 0)
  157.     when 6
  158.     enemy.jump(1, 0)
  159.     when 8
  160.     enemy.jump(0, -1)
  161.     end
  162.     end
  163. Mess_Text.write ("#{enemy.list[2].parameters[0]}受到#{enemy.damage.to_i}伤害。")
  164.       end #伤害范围
  165.     end #定义event
  166. end #旋舞斩技能

a45bf90b17a1188e318975be4fd779d.png (29.85 KB, 下载次数: 3)

八个方向

八个方向

446aa9f09be81bf5de9ab314171cd83.png (4.24 KB, 下载次数: 5)

技能范围扩大

技能范围扩大

Lv5.捕梦者

梦石
0
星屑
33178
在线时间
10489 小时
注册时间
2009-3-15
帖子
4756
来自 4楼
发表于 2022-9-22 20:22:23 | 只看该作者
243行就是范围
回复 支持 1 反对 0

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6286
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
2
 楼主| 发表于 2022-9-22 15:01:56 | 只看该作者
本帖最后由 金芒芒 于 2022-9-22 15:42 编辑

那么技能范围是否可以扩张到when0..25呢。rand的数量也要增加吗   .enemy.jump(0, 1)是敌人上面吗
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
2
星屑
13088
在线时间
2273 小时
注册时间
2011-6-4
帖子
613
3
发表于 2022-9-22 19:31:48 | 只看该作者

回帖奖励 +10 星屑

这是你自己写的arpg系统,还是用的别人的,只从中截一小段出来很难读懂啊。
BUG反馈请加QQ 529283039
水友群 917854767

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6286
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
5
 楼主| 发表于 2022-9-22 21:36:40 | 只看该作者
本帖最后由 金芒芒 于 2022-9-22 21:38 编辑


太帅了小姐姐开到9满屏的尸体
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6286
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
6
 楼主| 发表于 2023-5-30 17:03:05 | 只看该作者
真·可乐 发表于 2022-9-22 19:31
这是你自己写的arpg系统,还是用的别人的,只从中截一小段出来很难读懂啊。 ...

别人写的抄过来的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-27 07:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表