我想自己寫乙個三國殺,請問武將技能怎麼編寫?

時間 2021-05-30 14:28:16

1樓:etnAtker

我覺得可以寫乙個武將介面(虛類),預設每個武將都有瀕死時觸發的技能(虛函式),只不過有的武將的這個瀕死時觸發的技能為空(實現時直接return)。每個武將致死時都執行一遍這個函式即可。受到傷害時,被使用錦囊時,抽牌時的判定都可以用這個方法來搞。

2樓:

技能沒必要掛在角色下,因為所有系統最終都必然會和角色有關聯,如果所有系統都寫在角色下那就太亂了。

一般可以將技能拆分出來,技能提供基礎技能,如遺計或者剛烈。而每個武將所關聯的技能和數值都拆分到配置裡去,如 「郭嘉」 受到傷害會關聯 「遺計」。當武將受到傷害時,則通過配置取到所關聯的技能,再去處理。

這樣拆分之後可以更好地復用,配置什麼的讓策劃去弄就好了(你自己做就當然還是自己弄了,笑)。

給函式加編號是想根據配置或者狀態呼叫不同的函式吧,如果用C++用map就好了,用指標可以儲存函式位址;如果有的lua就更加方便了,直接把函式扔table裡就好了。

3樓:武威的濤哥

這可以參考設計模式中的Command模式。

每個武將技能做成命令,觸發的時候去執行相應的命令。

有開源的太陽神三國殺,c++/Qt寫的。

4樓:東檬成雙

我自己就特別愛玩三國殺,也是學計算機的,剛開始我覺得乙個卡牌遊戲怎麼這麼大記憶體呢,而且消耗gpu。現在看裡面玩的遊戲,各種邏輯和角色,真的好厲害,玩的很開心

5樓:

我覺得武將的技能應該作為目標方的事件響應函式出現。武將發動了技能,是武將執行了乙個行為,但是這個行為應該在別的武將上產生效果(更改別的武將的引數)。這個過程與事件更像。

華佗那種加血的技能,可以看作華佗自身是目標方。

而且像龐統的涅槃,還有那種和場上武將數量有關係的技能,實際上也是一種事件響應。曹操、郭嘉、夏侯惇這種受傷時觸發的技能也是事件響應。還有黃月英那種也可以。

其實殺、閃、桃、無懈可擊這些也可以作為發動方的事件,這樣統一了卡牌和技能的結算流程。

這些事件的結算需要乙個順序,可以用佇列或者棧來實現。棧有時候更好一點,處理例如黃月英那種會更好。

以上只是很久之前的構想。今天看到這個問題,遂總結一下。懷念本科時和室友一起打三國殺的美好時光……

《三國殺》第乙個失衡武將是誰?

論取名的重要性 標包張遼,每回合穩定兩牌差 雖然摸不到錦囊裝備,殺也很少,但是拿過來兩張閃也相當於你出了兩張殺。還有威懾力,對面都不敢留桃子。 哥哥 我認為第乙個失衡武將是禰衡,技能是狂才和舌劍,技能介紹如下,狂才 出牌階段時可以使自己的出牌時間變為五秒,如果這麼做,則禰衡使用的牌沒有距離和次數限制...

DIY乙個三國殺武將 朱俊 ,求評價?

S.Zhang 判定這種東西不是什麼人都可以有。張魯好歹也有個五斗公尺道,信徒眾。你這個這麼強的判定算什麼呢?統一回覆,我懶得教你們。乙個歷史武將的一生沒有誰誰的天敵,即使有,也沒必要把武將技能設計的看上去就是卵生兄弟一樣。另外,這個人實在不配有判定技能。 韓信 剛開始看感覺技能比較強,實際認真看了...

關於三國殺武將sp張琪瑛的乙個疑問?

阿源 很簡單的問題。改判定牌優先,這就是平時所謂的改判,司馬懿 張角打出牌來改判,等所有那些氪金少的渣渣們秀完了,到了判定牌將要生效的時候就是我氪金大佬張琪瑛的show time,我直接一張牌不消耗就把你結果給改了。如果我幾千塊錢的神仙將還要和你們這群不氪金的渣渣比拼誰的位置更優越,才能最後改判,豈...