Project1

标题: 有關武器大師的問題 [打印本页]

作者: timmyfong2004    时间: 2013-7-23 04:35
标题: 有關武器大師的問題
想做出一種技能
效果是
「當擁有指定技能,並裝備上這類裝備時,提升能物理攻擊點數」
例子:當擁有技能「劍術大師」,並裝備上「劍」類武器時,物理攻擊力增加10點

由於狀態不能加量數,所以不能使用狀態法
而用公共事件寫成條件分歧並設定並行使用的話會使能力加至上限
實在想不到方法,希望有版友能幫助一下小弟,謝謝
作者: rpgxs    时间: 2013-7-23 14:45
比较蛋痛的完成了这个效果。
首先获取武器ID,然后判断一下是不是剑武器的ID。
如果是剑武器ID就告诉事件,我装备了剑,然后处理当前的剑术大师的加成效果。
注意,由于做的比较急,有一个小问题,就是如果不装备剑学习了剑术大师这个技能,不会有加成。
LZ可以自己解决掉,只是我在做的时候没处理好顺序。
Project9.rar (299.33 KB, 下载次数: 59)
作者: timmyfong2004    时间: 2013-7-23 15:43
本帖最后由 timmyfong2004 于 2013-7-23 15:45 编辑
rpgxs 发表于 2013-7-23 14:45
比较蛋痛的完成了这个效果。
首先获取武器ID,然后判断一下是不是剑武器的ID。
如果是剑武器ID就 ...


小弟新手...所以只是略懂腳本的內容...有些問題不太明白想請教一下...
1.不明白「获取武器ID,然后判断一下是不是剑武器的ID」這句的意思...
2.從公共事件的腳本中來看...這方法是否只適用於隊長?
3.不明白如何修改技能的加乘效果...
4.如果我有數個角色,然而每個角色也能學習數種不同的武器,亦能學習數種不同的武器大師類技能,那是否要用到大量變量和開關?


謝謝
作者: rpgxs    时间: 2013-7-23 16:20

1,这个武器ID的意思就是数据库里的武器序号,比如默认的剑就是19~24,那么19-24都是剑类武器,在获取武器ID的时候,如果获取的ID不是19~24就人为他没有拿剑。(其实是我不知道怎么获取当前武器是什么类型。。。)
2,对,我做的这个是只适合队长。或者说是玩家ID 1的角色。
3,技能加成就是用解决你说的无止境增加数值的。
4,如果有多个需要的话,我觉得也是可以做到,但是会更加复杂的事件判断。不过可以做出公共事件,在学习/遗忘这个技能的时候就判断下,平常的时候就不断的判断有没有带需要的武器。然后给他们赋值。
大概的流程。
学习技能——公共事件处理(是第几个角色获得了这个技能?加成值是多少?)——地图上——并行事件(角色带了相对应的武器吗?)
遗忘技能——公共事件处理(是第几个角色遗忘了?清空他的加成吗?)——地图上——并行事件(角色带了相对应的武器吗?)

为毛我自己都感觉好复杂的样子啊。。。(会脚本的话,就可以自己写个脚本,直接在切换武器的时候进行判断)
作者: timmyfong2004    时间: 2013-7-23 16:38
本帖最后由 timmyfong2004 于 2013-7-23 16:40 编辑
rpgxs 发表于 2013-7-23 16:20
1,这个武器ID的意思就是数据库里的武器序号,比如默认的剑就是19~24,那么19-24都是剑类武器, ...


我只懂看一點腳本但不懂寫腳本
如果我有以下兩個腳本會否對造成這個武器大師的技能有幫助?
1.在技能備注內填寫資料便能夠增加力量的被動技能
例子:A技能,被動技能,擁有後+20點物理攻擊
如果B角色有A技能後就會+20點物理攻擊
忘記後便回後原來的物理攻擊
(其實如果這腳本能有在備注寫下條件分歧的話就已經可以完成了...)
2.武器裝備後能夠得到技能,卸下後便忘記技能
例子:B角色得裝備C武器後得到A技能,卸下後忘記A技能
(這也是如果能寫條件分歧的話就已經可以完成了...)

如果有這兩個腳本的話會否使事情簡單些?謝謝
作者: rpgxs    时间: 2013-7-23 17:42
完全可以。而且连事件都省了。(用脚本就是强)
作者: timmyfong2004    时间: 2013-7-23 17:46
rpgxs 发表于 2013-7-23 17:42
完全可以。而且连事件都省了。(用脚本就是强)

但問題是這兩個腳本不能設置條件分歧...所以我弄不到同時裝備劍和擁有劍術大師才有攻擊力增加的情況...
作者: rpgxs    时间: 2013-7-23 21:02

加攻击的条件是
1,装备着剑
2,有剑术大师这个技能
那么根据你的2个脚本
1,给剑类武器增加剑术大师的技能,在装备的时候获得剑术大师这个技能
2,在有剑术大师的时候会获得攻击力增加
所以还要鬼条件分歧啊。你只要在所有的剑类武器上增加剑术大师这个技能就行了!
作者: timmyfong2004    时间: 2013-7-23 22:36
rpgxs 发表于 2013-7-23 21:02
加攻击的条件是
1,装备着剑
2,有剑术大师这个技能

這樣的話會使沒有劍術大師的人裝備後也會有攻擊力提升...
作者: a0936459772    时间: 2013-7-24 12:13
本帖最后由 a0936459772 于 2013-7-24 12:23 编辑

先建立一个以下图为范例的公共事件

之后再Game_Actor的291行加入反白部分
刷新时调共公共事件


RUBY 代码复制
  1. $game_temp.reserve_common_event(公共事件ID)


测试过应该没啥问题,
美中不足的地方就是装备或卸下之后,要离开菜单,再呼叫菜单能力值才会正常显示,
不过我相信这应该只是小问题,不懂再问。


题外话:
原来VA的skill_learn?方法只能针对职业中随等级习得的技能和事件学习的技能做判断
主角和职业的特性"启用技能"一概会判断为假,难怪折腾半天弄不出来...
作者: timmyfong2004    时间: 2013-7-24 15:22
本帖最后由 timmyfong2004 于 2013-7-24 15:32 编辑
a0936459772 发表于 2013-7-24 12:13
先建立一个以下图为范例的公共事件

之后再Game_Actor的291行加入反白部分


有少許疑問(理解上的問題)...希望教授一下小弟...
1.能否把「攻擊力+10」變成學會技能,而「攻擊力-10」變成忘記技能?
2.如果有數個角色都有可能學到劍術大師的話,可否放到同一個腳本?
3.是不是如果一開始沒有裝備武器,腳本就先行使第2項(若無裝備劍)?
4.腳本是正常執行,那這腳本要設置給所有劍類武器嗎?
作者: a0936459772    时间: 2013-7-24 15:52
本帖最后由 a0936459772 于 2013-7-24 16:03 编辑
timmyfong2004 发表于 2013-7-24 15:22
有少許疑問(理解上的問題)...希望教授一下小弟...
1.能否把「攻擊力+10」變成學會技能,而「攻擊力-10」 ...


1.不行,如果主角遺忘了技能,那麼事件頁中的條件分支"「劍術大師」已學會?" 就會一直判斷為假,則什麼都不會執行。

2.可以,在同一个事件頁下面如法炮制,更改可能會學到此技能的主角ID就行了,不需要新建事件頁。

3.不会,第二項有個條件分支"劍術大師啟用?"若為ON則執行,但是所有的开关初始化状态都是OFF状态

4.不需要,$game_actors[4].wtype_equipped?(4),
這句的意思是:主角ID為4是否裝備武器類型ID為4的武器?
其中wtype_equipped?(4),括號裡面的數字是武器類型ID而不是武器ID
只需要用語中定義"劍"類武器,然後在武器中設定武器類型為"劍",裝備了劍類武器,條件分支即為真。
作者: timmyfong2004    时间: 2013-7-24 16:14
a0936459772 发表于 2013-7-24 15:52
1.不行,如果主角遺忘了技能,那麼事件頁中的條件分支"「劍術大師」已學會?" 就會一直判斷為假,則什麼 ...

1.我遺忘技能的意思不是指劍術大師這一個技能,而是指其他技能(例如有個技能要學會劍術大師和裝備劍才能學會的,那這樣對換可以嗎?
4.我意思是...觸發條件為無的時候,不是要有道具或是技能才會發動嗎?那我應該改為并行處理並把開關設成「劍術大師啟用?」嗎?
謝謝
作者: a0936459772    时间: 2013-7-24 16:30
本帖最后由 a0936459772 于 2013-7-24 16:38 编辑
timmyfong2004 发表于 2013-7-24 16:14
1.我遺忘技能的意思不是指劍術大師這一個技能,而是指其他技能(例如有個技能要學會劍術大師和裝備劍才能 ...


可以,但是學會和遺忘的同時能力也要跟著相應變化,不過你應該是有用被動技能腳本對吧?


這個公共事件不需要用道具或技能呼叫,而是在腳本編輯器中的Game_Actor的291行加上一段

$game_temp.reserve_common_event(1) #(參考圖2)

這句話的意思就是調用公共事件1

在初始化裝備、變更裝備、強制變更裝備、經驗值變化和職業變化的時候都會實行refresh方法,

相當於每次執行refresh方法公共事件1也會跟著執行,所以條件設置為無也無所謂。
作者: timmyfong2004    时间: 2013-7-25 23:24
a0936459772 发表于 2013-7-24 16:30
可以,但是學會和遺忘的同時能力也要跟著相應變化,不過你應該是有用被動技能腳本對吧?


我已經食你的說法做了...可是攻擊力並沒有增加...
作者: a0936459772    时间: 2013-7-26 12:33
本帖最后由 a0936459772 于 2013-7-26 14:14 编辑
timmyfong2004 发表于 2013-7-25 23:24
我已經食你的說法做了...可是攻擊力並沒有增加...


下面是范例工程

随便新建一个工程,然后把data资料夹覆盖过去就行了。

Data.rar (191.04 KB, 下载次数: 106)
作者: timmyfong2004    时间: 2013-7-26 13:56
a0936459772 发表于 2013-7-26 12:33
下面是范例工程

随便新建一个工程,然后把data资料夹覆盖过去就行了。

我明白我失敗的原因了...
因為我製作的遊戲是以技能書或是技能樹的方式習得技能,所以發動不了你設計的腳本...
謝謝你




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