作者hoyunxian (WildDagger)
看板RPGMaker
标题Re: [问题] 双职业系统
时间Sun Mar 14 00:31:41 2010
※ 引述《sagarasumi (绯樱澄雪)》之铭言:
: 不好意思..我想请问一下
: 我现在想用 RM 开发一款可以有双职业系统的游戏
: 大致说明一下...
: 一开始的设定可能是法师或弓箭手
: 等到等级到 5 级..就可以学习第二个职业
: 像是 法师+战士 or 弓箭手+厨师 这类的..
: 因为预设方法是转换单一职业..
: 所以我的想法是...
: 创造第二个变数.."职业2"..
: 然後..用转殖的方法..确定职业一有职业之後..
: 把职业2的职业(预设是空白)改成新职业这样..
: 不过我在脚本那边一直出问题..
: 不太会写..也不确定要在哪里改..
: 是不是可以请板上的高手教我 ><
可以先把脚本贴上来吗?
基本上职业的部分不仅是要改GAME_ACTOR的部分
Module RPG这个也是要改的
要改的地方主要是Initialize这样
------------------------------------------------------------------------------
其实,RMXP的职业栏位没有想像中的那麽少
虽然常常只会用1~10之类的栏位
但实际上是可以做到999个职业的
所以比方说有战士、枪兵、魔法师、弓箭手、祭司这五种职业好了
实际上可以用RMXP的职业作成20个职业(若有无副职业的+5)
然後直接用更换职业的方式弄成看来像是双职业的方法(实际上是单职业)
每个都要重新设定很麻烦?
RMXP的CTRL+C是很好用的
虽然某些部分还是要自己调,但是RM的职业主要都是调能装备什麽+学到什麽东西吧
所以最好的方式就是先列张表确认每个职业可以学到什麽+能够装备什麽
也就是先进行纸上作业再进到RM里面去做。
如果说是在视窗里面要看来像是双职业
可以在Window_Base中的draw_actor_class中动手脚
首先用一个区隔符号(比方说,号)
以下是原本的写法
def draw_actor_class(actor, x, y)
self.contents.font.color = normal_color
self.contents.draw_text(x, y, 236, 32, actor.class_name)
end
改成以下的写法
def draw_actor_class(actor, x, y)
self.contents.font.color = normal_color
actor_class_name_main = actor.class_name.split(/,/)[0]
actor_class_name_vice = actor.class_name.split(/,/)[1]
actor_class_name = "主:" + actor_class_name_main +
"/副:" + actor_class_name_vice
self.contents.draw_text(x, y, 236, 32, actor_class_name)
end
这样就能让人以为是双职业了。
actor_class_name那边可以任意改成你想呈现的方法。
除了表现方式以外,基本上这方面其实根本不用动到脚本去改。
顺带一提,XP的条件分歧里面没有若职业等於什麽的时候怎样的功能
所以这也必须要动用脚本了
在最後那一页的剧本中输入「$game_actors[队员编号].class_id == 职业ID」就可以
如果需要判断主副职业的话那就是要使用Interpreter自订功能了。
另外,这招VX也通用,因为不管是设定还是脚本全是最基础的部分,
只是虽然VX和XP的职业设定页面并没有差多少,但是资料库设定部分却有变
所以上面的actor.class_name记得改成actor.class.name
不然VX会报错给你看。
(明明几乎没有差,却故意把_改成.,真怀疑为什麽要这样做......)
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.137.58.9
※ 编辑: hoyunxian 来自: 220.137.58.9 (03/14 00:34)
※ 编辑: hoyunxian 来自: 220.137.58.9 (03/14 00:49)
※ 编辑: hoyunxian 来自: 220.137.58.9 (03/14 01:01)
1F:推 sagarasumi:喔喔!!感谢你!!我都没想到可以用这样的方法!! >< 03/14 01:02
※ 编辑: hoyunxian 来自: 220.137.58.9 (03/14 01:03)
※ 编辑: hoyunxian 来自: 220.137.58.9 (03/14 01:41)