unity 戰鬥系統設計(條件觸發篇)

2021-10-11 02:00:14 字數 2650 閱讀 7096

戰鬥系統設計之(條件觸發篇)

1.戰鬥裡面的數值需要發生改變必須需要滿足條件才會觸發。這裡就涉及到條件觸發系統。

a.通用數值條件判斷

using system;

public

enum rangetype

public

class

commonranger

public

bool

inrange

(float ptarget)

else

if(rangetype == rangetype.lessorequal)

else

if(rangetype == rangetype.equal)

else

if(rangetype == rangetype.range)

else

if(rangetype == rangetype.greaterorequal)

else

if(rangetype == rangetype.abs)

else

if(rangetype == rangetype.greater)

return

false;}

}

b.基礎條件類:

public

class

vconditioner

public

vconditioner

(int pbodyid)

public

void

setranger

(commonranger pranger)

public

void

setpasscb

(system.action<

float

> ppasscb)

public

void

load()

public

void

unload()

protected

virtual

void

onload()

public

virtual

void

oncheckpass

(float ptime)

}protected

virtual

void

onunload()

protected

void

onpass

(float ptime)

}public

bool

ispass()

}

c. 舉例擴充套件cd 條件

public

class

vcdconditioner

:vconditioner

public

override

void

oncheckpass

(float ptime)

else

}}

d.舉例擴充套件死亡條件

public

class

vdeadconditioner

:vconditioner

}

2.觸發條件

a.基礎觸發類:

using system.collections.generic;

public

class

vtrigger

public

vtrigger

(int pbodyid)

public

void

settriggeraction

(system.action<

float

> pac)

public

void

load()

foreach

(var item in list)

}protected

void

addvconditioner

(vconditioner pvconditioner)

else);

} list.

add(pvconditioner);}

protected

virtual

void

onload()

private

void

ononepass

(float ptime)

private

void

checkallpass

(float ptime)}}

public

bool

isallpass

(float ptime)

return

true;}

}

b.舉例擴充套件死亡觸發器

public

class

vdeadtrigger

:vtrigger

protected

override

void

onload()

}

MMORPG戰鬥系統隨筆(一) 戰鬥系統流程簡介

前言 通常,我們在玩一款遊戲的時候,最直接面對的玩法,就是這款遊戲的戰鬥系統。由於遊戲的分類實在太多,對應的戰鬥玩法也各有其特色。而我目前參與研發的遊戲,主要是rts遊戲和mmorpg遊戲兩種型別,所以我的隨筆就記錄一下mmorpg遊戲的戰鬥系統的一下設計筆記。2016年屬於mmorpg爆發的一年,...

卡牌遊戲戰鬥系統的設計和實現(二)

在一篇文章中,我更多的是從遊戲理論的角度,討論了戰鬥的系統的設計。這篇文章中,我將從程式的角度,以一款航海類遊戲為例,實現戰鬥系統。在航海類遊戲中,戰鬥角色是出海的船隻,一次出海的船隻的數量有限定,船隻可以裝配火炮,護甲,船帆等裝備,船隻還可以通過裝配船長來獲取技能。技能的發動是有概率的。戰鬥規則是...

戰鬥系統效能瓶頸優化(一)

mmorpg的大規模團戰中,需要經常判斷兩個單位之間的陣營關係,從而為技能生效提供判斷依據 往往分為敵方 我方 友方 中立方等 如果n個人同時使用技能,這個判斷函式的呼叫次數將會是n 2的量級。而隨著遊戲的生命週期的延長,這種判斷會變得越來越繁雜 不加東西怎麼做社交?怎麼坑錢 這時候,這個判斷函式就...