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

Project1

 找回密码
 注册会员
搜索

怎么在脚本里分别控制每个角色的自动战斗开关

查看数: 2046 | 评论数: 5 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2009-10-13 05:47

正文摘要:

本帖最后由 yaruna 于 2009-10-13 05:51 编辑 好吧..我实验了5个小时...试了N种办法. 我失败了... 果然我只是会修改皮毛的脚本... 每个角色状态栏里的自动战斗文字切换已经弄好了.. 左右切换自动战斗的开关.. ...

回复

Eienshinken 发表于 2009-10-14 14:46:49
本帖最后由 Eienshinken 于 2009-10-15 00:18 编辑

明白了.....
原来是这样...我还不行对面向对象的概念不是太清楚.
这样一说 就明白多了

yaruna是我 请BZ帮忙认可神思前辈.
神思 发表于 2009-10-14 09:56:49
默认的呢·是直接获取数据库里的那个选项。。。
想要随时更改的话呢就要将Game_Actor 的 auto_battle 给重定义一下··
把指向数据库的东西改成令一个变量。
attr_writer :auto_battle
等同定义了这么一个方法
def auto_battle=(bool)
  @auto_battle = bool
end

*avgc
-____-防止你将setup重定义过,导致参数个数不对的问题。。。。-___-小小的预防一下而已..
Eienshinken 发表于 2009-10-14 03:09:35
谢谢神思前辈帮忙 - -终于弄好了...我还以为这个问题解决不了了..

不知能否告诉我这样改的原应呢..
module RPG的class Actor里面不是attr_accessor :auto_battle的吗
为什么要改成attr_writer :auto_battle ?? attr_writer从未见脚本里使用过..
定义指定属性的写入方法。那个指定属性是指什么东西= =指的是打钩那几个设置吗...

下面的2个方法就勉强懂了..
是不是把原先的直接读取角色数据库设置的方法 改为 获取自动战斗是@auto_battle的真伪..
唯一不明白的是 (*avgc) 是啥意思 汗... 原先的Game_Actor里的方法不是setup(actor_id)的吗...

问题太多了..但是答案已经是对的了...
如果前辈没时间或者回答太烦琐 也没关系.
感谢前辈
神思 发表于 2009-10-14 01:32:38
  1. class Game_Actor
  2.   attr_writer :auto_battle
  3.   alias :old_setup :setup
  4.   #--------------------------------------------------------------------------
  5.   # ● 设置
  6.   #--------------------------------------------------------------------------
  7.   def setup(*avgc)
  8.     old_setup(*avgc)
  9.     @auto_battle = $data_actors[@actor_id].auto_battle
  10.   end
  11.   #--------------------------------------------------------------------------
  12.   # ● 获取选项 "自动战斗"
  13.   #--------------------------------------------------------------------------
  14.   def auto_battle
  15.     return @auto_battle
  16.   end
  17. end
复制代码
放到main 前

然后就可以通过
$game_actors[actor_id].auto_battle = true/false;
来设置是否自动战斗。。。。
Eienshinken 发表于 2009-10-14 00:51:25
泪流满面...居然没有人啊。.或者说是根本就无法改变那个开关..
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2025-1-12 07:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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