現在有四隻玩家,分別儲存他們為 p0,p1,p2,p3 想知如何能更有效率地儲存玩家為以上代碼請點我好,現在儲存他們的殺敵數分別為: {p0}.k , {p1}.k , {p2}.k , {p3}.k 儲存他們的金錢為 {p0}.money, {p1}.money, {p2}.money, {p3}.money 現在來一個事件,是他們殺人了,要加殺敵數和金錢 [檢查]人物死亡 所有玩家 所有電腦 儲存攻擊者代碼:事件/KILL [動作]計算整數 {KILL}.k = {KILL).k +1 [動作]計算整數 {KILL}.money = {KILL).money +10 再來一個事件,他們殺敵夠10的倍數升級了 現在儲存他們的LV: {p0}.lv , {p1}.lv , {p2}.lv , {p3}.lv [檢查]人物死亡 所有玩家 所有電腦 儲存攻擊者代碼:任務/LVUP [檢查]比較數值 {LVUP}.k >= 10 [動作]計算整數 {LVUP}.lv = {LVUP).lv +1 [動作]設定整數 {LVUP}.k =0 [<-將殺敵數重新設回0,不然事件猛重覆 [動作]人物說話 說話者代碼 LVUP ('恭喜升級至%{{LVUP}.lv}%') 還有購買事件 他們會說A來買子彈,子彈要30元 [檢查]人物說話 所有玩家 內容="A" 儲存為事件/p [檢查]比較數值 {p}.money >= 30 [動作] {p}.money = {p}.money -30 [動作]放子彈 當然,有更方便更省容量的方法弄商店。有興趣的點我 好啦,我再詳盡地解釋一下吧 現在來一個事件,是他們殺人了,要加殺敵數 [檢查]人物死亡 所有玩家 所有電腦 儲存攻擊者代碼:任務/KILL [動作]計算整數 {KILL}.k := {KILL}.k +1 現在p1殺人了,檢查便觸發了。 所以,KILL就是p1了(這應該不難理解吧) 來到動作了, {KILL}變成p1 (這就是今次更新的內容) 所以,動作就變成: [動作]計算整數 p1.k := p1.k +1 即是p1的殺敵數+1了 升級的那個事件便留給各位自行想吧 進階-遞增升級系統 升級需要達到的殺敵數就叫[{p}.x]吧 遞增率名稱我叫他做[{p}.r]吧, 遞增率的遞增率就叫[{p}.r2]吧。 當有遞增率便能做到像光繼、怪朋友那些RPG那樣越高等越難升級的感覺。 而那個變化幅度亦可調校,如某些職業較易殺多些人什麼的,都能校。 但一開始記得要校每名玩家的[{p}.x]不可等於0 率一般是小數,同人陣支援不了小數,就全部乘以100,再除以100 例: 小偷的遞增率是1.2,就寫120,計了後結果再除100(可以back up 一個多帶個位值的變數,我稱它為[{p}.bx]),如此類推 事件[LV_UP]重覆99999次 [檢查]人物存活 所有玩家 其中一名在場上 (儲存代碼:事件/p) [檢查]比較數值 [{p}.k] >= [{p}.x] . [動作]計算整數 [{p}.lv] = [{p}.lv] +1 [動作]設定整數 [{p}.k] =0 [<-將殺敵數重新設回0,不然事件猛重覆] [動作]計算整數 [{p}.bx] = [{p}.bx] *[{p}.r] [動作]計算整數 [{p}.x] = [{p}.bx]/100 [動作]計算整數 [{p}.r] = [{p}.r] *[{p}.r2] [動作]計算整數 [{p}.r] = [{p}.r] /100 [動作]設定整數 [lv] = [{p}.lv] [動作]人物說話 說話者代碼 事件/p '恭喜升級至%{lv}%' [{p}.r2]不宜過大,最好1.2以內 有時候可能用「+」為算子效果更佳 以上的遞增方式只供參考,始終自己做的方式才是最適合自己同人的;畢竟不同的RPG升級方式不同嘛,希望能幫到各位~ |
變數 >