Project1

标题: 变量运算和事件脚本求解0 0 [打印本页]

作者: 彭格列第XI代    时间: 2012-9-25 20:23
标题: 变量运算和事件脚本求解0 0
$game_variables[1]=$game_variables[1]–$game_variables[2]
米错吧一 一为啥用不了。
还有让事件朝向怎么写。
获取事件名也不行QAQ
$game_map.events[1].name
P叔求解0TZ
弄不清得话过几天我发文件给你QAQ最近不能弄电脑dsu_plus_rewardpost_czw
作者: Password    时间: 2012-9-25 20:56
表示这为何不用事件解决……嘛……顺便感谢P叔为我分担不少……
虽说我不动脚本吧,但是这个写法略显诡异……
帮你召唤吧@protosssonny
作者: 怪蜀黍    时间: 2012-9-25 21:50
本帖最后由 protosssonny 于 2012-9-26 21:17 编辑

要读取事件名称需要加上以下代码:
  1. #==============================================================================
  2. # ■ Game_Character
  3. #==============================================================================
  4. class Game_Character
  5.   #--------------------------------------------------------------------------
  6.   # ◎ 定义实例变量
  7.   #--------------------------------------------------------------------------
  8.   attr_accessor :name                  # 名称
  9.   #--------------------------------------------------------------------------
  10.   # ◎ 初始化对象
  11.   #--------------------------------------------------------------------------
  12.   alias character_ini initialize
  13.   def initialize
  14.     character_ini
  15.     @name = ""
  16.   end
  17. end

  18. #==============================================================================
  19. # ■ Game_Event
  20. #==============================================================================
  21. class Game_Event < Game_Character
  22.   #--------------------------------------------------------------------------
  23.   # ◎ 初始化对像
  24.   #     map_id : 地图 ID
  25.   #     event  : 事件 (RPG::Event)
  26.   #--------------------------------------------------------------------------
  27.   alias event_ini initialize
  28.   def initialize(map_id, event)
  29.     event_ini(map_id, event)
  30.     @name = @event.name
  31.   end
  32. end
复制代码
然后使用以下脚本来读取当前事件名称:
  1. $game_map.events[@event_id].name
复制代码
如果指定事件则把@event_id改成相应的事件ID。
改变1号事件的朝向:
  1. $game_map.events[1].set_direction(2) #朝向下
  2. $game_map.events[1].set_direction(4) #朝向左
  3. $game_map.events[1].set_direction(6) #朝向右
  4. $game_map.events[1].set_direction(8) #朝向上
复制代码
获取当前事件的朝向:
  1. $game_map.events[@event_id].direction
复制代码
至于你那个变量相减,是不是你把变量1和变量2设计成数组用于储存事件的HP/MP等信息了?数组不能相减。
作者: 彭格列第XI代    时间: 2012-9-26 19:38
protosssonny 发表于 2012-9-25 21:50
要读取事件名称需要加上以下代码:然后使用以下脚本来读取当前事件名称:如果指定事件则 ...

米有啊- -
我测试时先写事件:变量1和2=100(血)和10(攻)
作者: 彭格列第XI代    时间: 2012-9-26 21:23


$game_variables[$game_map.events.id * 4 +2] =game_variables[$game_map.events.id * 4 +2]-10

作者: 彭格列第XI代    时间: 2012-9-26 21:36
  1. $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
复制代码
P叔还是不行QAQ
上传图片需要~不是恶意连贴,表扣ME分啊QAQ

作者: 彭格列第XI代    时间: 2012-9-26 21:51

真滴不是连贴QAQ
之前给我滴改成这样了- -米有滴100行=_=
  1. #==========================================================================
  2. # ■ P叔的范例,两军团群殴的接触条件
  3. #==========================================================================
  4. # 说明:
  5. # 1、两个军团的事件ID必须连续,比如1、2、3为一个军团,4、5、6为另一个军团。
  6. #    不允许1、3、4为一个军团,2,5,6为另一个军团。
  7. # 2、for i in a..b中的a、b分别为军团乙的成员的最大和最小的事件ID。事件ID为
  8. #    1至a(不包括a)为军团甲的事件ID。比如for i in 4..6,那么军团甲就是1、
  9. #    2、3,军团乙就是4、5、6。
  10. # 3、函数fight(event)的返回值是一个包含2个元素的数组,利用该数组第零个元素
  11. #    判定是否接触,true为接触,false为不接触。利用该数组第一个元素判断接触
  12. #    的事件是哪一个事件,并可以以此确定与军团甲中本事件战斗的另一个敌人。
  13. #    为HP等计算提供依据。这里没有写HP计算,留给你写了。嗷呜,P叔真坏。
  14. #==========================================================================
  15.       
  16. def fight1(event)
  17.   #敌人攻击
  18.   for i in 11..20
  19.      #左
  20.     if event.x - $game_map.events[i].x == 1 and event.y == $game_map.events[i].y
  21.        $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  22.        $game_map.events[i].animation_id=90
  23.        return [4,[$game_map.events[i].id] ]
  24.     end
  25.     #右
  26.     if event.x - $game_map.events[i].x == -1 and event.y == $game_map.events[i].y
  27.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  28.       $game_map.events[i].animation_id=90
  29.        return [6, [$game_map.events[i].id]]
  30.     end
  31.     #上
  32.     if event.y - $game_map.events[i].y == 1 and event.x == $game_map.events[i].x
  33.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  34.       $game_map.events[i].animation_id=90
  35.        return [8, [$game_map.events[i].id]]
  36.     end
  37.     #下
  38.     if event.y - $game_map.events[i].y == -1 and event.x == $game_map.events[i].x
  39.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  40.       $game_map.events[i].animation_id=90
  41.        return [2, [$game_map.events[i].id]]
  42.     end
  43.   end
  44.       return [1, [$game_map.events[i].id]]
  45. end
  46.    
  47.   def fight2(event)
  48.   #我方攻击
  49.   for i in 1..10
  50.     #左
  51.     if event.x - $game_map.events[i].x == 1 and event.y == $game_map.events[i].y
  52.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  53.       $game_map.events[i].animation_id=90
  54.        return [4, [$game_map.events[i].id]]
  55.     end
  56.     #右
  57.     if event.x - $game_map.events[i].x == -1 and event.y == $game_map.events[i].y
  58.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  59.       $game_map.events[i].animation_id=90
  60.        return [6, [$game_map.events[i].id]]
  61.     end
  62.     #上
  63.     if event.y - $game_map.events[i].y == 1 and event.x == $game_map.events[i].x
  64.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  65.       $game_map.events[i].animation_id=90
  66.        return [8, [$game_map.events[i].id]]
  67.     end
  68.     #下
  69.     if event.y - $game_map.events[i].y == -1 and event.x == $game_map.events[i].x
  70.       $game_variables[$game_map.events[i].id * 4 +2] =$game_variables[$game_map.events[i].id * 4 +2]-10
  71.       $game_map.events[i].animation_id=90
  72.        return [2, [$game_map.events[i].id]]
  73.     end
  74.   end
  75.       return [1, [$game_map.events[i].id]]
  76.     end
复制代码
@protosssonny @protosssonny @protosssonny




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