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

Project1

 找回密码
 注册会员
搜索

【已解决】ALL_SOLDIER =[5]里面用事件添加其他ID ALL_SOLDIER =[5...

查看数: 2470 | 评论数: 13 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-4-3 21:11

正文摘要:

本帖最后由 金芒芒 于 2023-4-6 14:04 编辑 module Figter_data#::ALL_SOLDIER      #所有士兵   ALL_SOLDIER =[5] ---------------------------------------------- 如何用事件 ...

回复

金芒芒 发表于 2023-4-6 14:02:53
guoxiaomi 发表于 2023-4-5 02:41
你这个模块名有拼写错误,怎么看都应该是Fighter_Data。
如果想完整替换掉作为常量的数组内容,应该用repla ...

@all_fighters = [1]
if $game_switches[19] == true#(开关 开)
@all_fighters.push(2)  
end  
数组添加
guoxiaomi 发表于 2023-4-5 02:41:44
你这个模块名有拼写错误,怎么看都应该是Fighter_Data。
如果想完整替换掉作为常量的数组内容,应该用replace方法:https://ruby-doc.org/core-1.8.7/Array.html#method-i-replace

点评

我发的链接就是array的replace,string也有replace。不过一般的常量就不知道了  发表于 2023-4-6 17:04
array的replace可以换掉自身的内容,但是换完之后还是array。具体的实现可能就是挨个复制一遍。  发表于 2023-4-6 17:03
replace方法可以替换常量的内容吗?怎么用呢,有例子吗  发表于 2023-4-6 15:44
金芒芒 发表于 2023-4-4 15:09:41
本帖最后由 金芒芒 于 2023-4-4 15:10 编辑
纯属小虫 发表于 2023-4-4 14:09
@all_fighters 是类变量,用的时候还得加 class .......end

比较讨巧简单的话,直接用游戏全局变量  $ga ...


0就不行了 0是模板
RUBY 代码复制
  1. module Figter_data
  2.   #
  3. data_id = 0
  4. #=====基本、模型信息==========
  5. CHARACTER_NAME = []  
  6. AMMO_NAME = []
  7. AMMO_D_NAME = []
  8. ATK_SE = []
  9. ATK_SE_NUM = []
  10. DEF_SE = []
  11. DEF_SE_NUM = []
  12. S_ATK_SE = []
  13. S_ATK_SE_NUM = []
  14. S_SHOOT_SE = []
  15. S_SHOOT_SE_NUM = []
  16. S_PASSBY_SE = []
  17. S_PASSBY_SE_NUM = []
  18. S_DROP_SE = []
  19. S_DROP_SE_NUM = []
  20.  
  21. DEAD_ANIMATION_ID = []
  22. S_FLY_TYPE = []
  23. #=======类别=================
  24. THE_NAME = []
  25. IS_CAL = []
  26. IS_ARC = []
  27. IS_OBJ= []
  28. HEAVY = []
  29. LABEL =[]
  30. DESCRIPTION = []
  31. #1 light infan #2 heavy infan #3 light cav #4 heavy cav
  32. #5 missle_inf  #6 missle_cav  #7 elite  #8 special
  33. #==========属性==============
  34. HP_MAX = []
  35. AMMOR_HP = []
  36. SHD_HP = []
  37. BASE_ATK = []
  38. BRO_ATK = []
  39. S_BASE_ATK = []
  40. S_BRO_ATK = []
  41. ATK_SKILL = []
  42. DEF_SKILL = []
  43. ANTI_CAV = []
  44. ANTI_INF = []
  45. CHARGE_BOUN = []
  46. MORALE = []
  47. CRITICAL_HIT = []
  48.  
  49. EXPLOSION_SETTINGS = []
  50.  
  51. ATK_FR = []
  52. ATK_RANGE = []         
  53. ENGAGE_RANGE = []     
  54. ENGAGE_RANGE_MIN = []
  55. MOVEMENT_SPEED = []
  56. ACCURATCY = []
  57. AMMO_MAX = []
  58.  
  59. LIVE_CHANCE = []
  60.  
  61. ATK_CODE = []
  62.  
  63.  
  64. #===========战略用=============
  65. EXP = []
  66. PRICE = []
  67. EXP_NEED = []
  68. NEXT_LEVEL = []
  69. CAPTAIN_SKILL = []
  70. #==========Hero's only==============
  71. SP_MAX = []
  72. #加速量
  73. ACC_VALUE = []
  74. #防御减少量
  75. GUARD_VALUE = []
  76. #加速消耗体力(每帧)
  77. ACC_COST_SP = []
  78. #跳越消耗体力
  79. JUMP_COST_SP = []
  80. #大跳越消耗体力
  81. BIG_JUMP_COST_SP = []
  82. #恢复体力没帧(每帧)
  83. SP_REGAINED = []
  84. #攻击体力消耗
  85. ATK_COST_SP = []
  86. #英雄攻击呻吟
  87. HERO_ATK_SE = []
  88. HERO_ATK_SE_NUM = []
  89. #英雄死亡呻吟
  90. HERO_DEAD_SE = []
  91. HERO_DEAD_SE_NUM = []
  92. #英雄受伤呻吟
  93. HERO_GET_HIT_SE = []
  94. HERO_GET_HIT_SE_NUM = []
  95.  
  96.  
  97.  
  98. end
金芒芒 发表于 2023-4-4 15:04:46
本帖最后由 金芒芒 于 2023-4-4 15:17 编辑
纯属小虫 发表于 2023-4-4 14:09
@all_fighters 是类变量,用的时候还得加 class .......end

比较讨巧简单的话,直接用游戏全局变量  $ga ...


我现在直接@all_fighters = [5,2,8]
然后通过开关ON,可能不按顺序add[6] add[9]到 [5,2,8]里面

条件分歧物品信物=>10   开关ON @all_fighters = [5,2,8] add[6]
金芒芒 发表于 2023-4-4 14:25:56
纯属小虫 发表于 2023-4-4 14:09
@all_fighters 是类变量,用的时候还得加 class .......end

比较讨巧简单的话,直接用游戏全局变量  $ga ...
  1. push(obj1[, obj2 ...])
  2. 依次将 obj1、obj2 ... 添加到数组结尾。

  3. 返回 self。

  4. array = [1, 2, 3]
  5. array.push 4
  6. array.push [5, 6]
  7. array.push 7, 8
  8. p array          # => [1, 2, 3, 4, [5, 6], 7, 8]

  9. =============================================================
  10. include?(val)
  11. 若数组中包含 ==val 的单元就返回真。
复制代码



这套可行 1-100ID 数组里存在了的就返回没有添加

点评

要注意的是,数组id 首项是 0 哦~~~  发表于 2023-4-4 14:52
纯属小虫 发表于 2023-4-4 14:09:47
本帖最后由 纯属小虫 于 2023-4-4 14:14 编辑
金芒芒 发表于 2023-4-4 13:27
这样转换可以吗让他变成初始所有士兵

@all_fighters = Figter_data::ALL_SOLDIER[data_id]


@all_fighters 是类变量,用的时候还得加 class .......end

比较讨巧简单的话,直接用游戏全局变量  $game_variables[***]   (自己选)

至于调整数组【Array】的方法.....F1里好好学学,挺基础的
我复制几个你可能常用到的方法吧
=============================================================
self[nth]=val
将第 nth 个数组单元的值设定为 val。若 nth 超出数组范围时,自动加长数组并以 nil 对新增部分进行初始化。

返回 val。

=============================================================
push(obj1[, obj2 ...])
依次将 obj1、obj2 ... 添加到数组结尾。

返回 self。

array = [1, 2, 3]
array.push 4
array.push [5, 6]
array.push 7, 8
p array          # => [1, 2, 3, 4, [5, 6], 7, 8]

=============================================================
include?(val)
若数组中包含 ==val 的单元就返回真。
=============================================================
pop
删除末尾单元并返回它。若数组为空则返回 nil。

array = [1, [2, 3], 4]
p array.pop      # => 4
p array.pop      # => [2, 3]
p array          # => [1]

p array.pop      # => 1
p array.pop      # => nil
p array          # => []


以顶楼的样式为例子

$game_variables[***] =[5,2]

$game_variables[***].push 7

>>>>>$game_variables[***] =[5,2,7]

$game_variables[***].push 8

>>>>>$game_variables[***] =[5,2,7,8]

$game_variables[***] += [6]

>>>>>$game_variables[***] =[5,2,7,8,6]

金芒芒 发表于 2023-4-4 13:52:04
soulsaga 发表于 2023-4-4 13:47
哎..可能会报错?

我是原告,你是被告,你反过来了
soulsaga 发表于 2023-4-4 13:47:56
金芒芒 发表于 2023-4-4 13:27
这样转换可以吗让他变成初始所有士兵

@all_fighters = Figter_data::ALL_SOLDIER[data_id]

哎..可能会报错?
金芒芒 发表于 2023-4-4 13:27:00
本帖最后由 金芒芒 于 2023-4-4 13:35 编辑
soulsaga 发表于 2023-4-4 13:05
那是常量
定义了不能改


这样转换可以吗让他变成初始所有士兵

@all_fighters = Figter_data::ALL_SOLDIER[data_id]
  1. module Figter_data#::ALL_SOLDIER
  2.   
  3.   #所有士兵
  4.   ALL_SOLDIER[data_id] =[5]#,4,3,13,2,9,11,15,26,23,   #帝国
  5.   
  6. # 32,35,36,28,30,33,34, #诺尔森人
  7.   
  8. # 7,8,19,12,31,38,17, #雇佣兵
  9. # 27,6,10,14,16,18,21,22,29,39] #野怪
  10.   #所有英雄
  11. end
复制代码
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-1 11:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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