被動相關總結

2022-09-19 18:51:12 字數 2280 閱讀 1141

被動:

四種操作:新增、消失、生效、失活

注意生效和觸發的區別

關鍵字: 觸發後判斷條件list(可以是生效條件或失活條件)、條件list滿足後(即生效或失活)執行具體邏輯、triggerobj(哪位遊戲物件觸發的)、targetobj(目標物件)、passiveobj(被動邏輯在誰身上)、cfgeffectobj(觸發生效後物件,走配置,可以是上面三個中的乙個)

先舉例:

1.ninja生命值低於a%時,ninja攻擊力提公升a%  ,ninja生命值高於%b後效果消失。

passiveobj=ninja。cfgeffectobj 配置的為passiveobj

(1)觸發:ninja受傷掉血。(triggerobj = enemy,targetobj=ninja,)

條件:ninja生命值低於%a

生效後行為:ninja攻擊力提公升(實際上專案加buff)。

(2)觸發消失:ninja回血

條件:cfgeffectobj生命值高於b%

生效後行為:失活,效果移除(實際上removebuff上面(1)的buff)

ninja主**雷盾傷害敵人, ninja釋放閃電鏈

passiveobj=ninja。cfgeffectobj 配置的為passiveobj

觸發:技能傷害enemy(triggerobj = ninja, targetobj=enemy)

條件:1.傷害技**為主**   2.skillid為雷盾

生效後行為:cfgeffectobj釋放閃電技(釋放技能邏輯)

受到boss傷害時有60%的概率被繳械,持續12秒效果。

具體需求是:ninja受到boss傷害後ninja有60%概率被繳械。passiveobj=boss, cfgeffectobj 配置的為targetobj

觸發:ninja受傷觸發(triggerobj = enemy, targetobj=ninja)

條件:觸發物件等於被動物件  triggerobj == passiveobj

結果:cfgeffectobj(ninja)新增繳械buff

抽象:

1.被動新增:繫結被動邏輯在gameoobj上,並沒有具體執行,簡單理解為事件的監聽等待。

2.三個物件定義:triggerobj(哪位遊戲物件觸發的)、targetobj(目標物件)、passiveobj(被動邏輯在誰身上)

3.被動生效後物件:cfgeffectobj,走配置決定是1中哪個obj

4.被動觸發(event派發)

5.條件list是否通過

6.通過5後,對cfgeffectobj進行操作。

7.cfgeffectobj操作差異化的實現。通過繼承passivebaselogic基類,進行具體操作。像addbuff以及釋放activeskill比較常用的,直接在baselogic內進行操作(不需要子類了)。

8.被動的重置(失活)。被動觸發後判斷是否移除生效的效果

9.被動的消失。從遊戲物件上移除。消失前先呼叫8.失活移除具體效果。

具體實現:

1.ninjapassiveskillmanager內 target+passivelist

2.被動生效差異化的實現:passivebaselogic的繼承

3.condition目前是直接swith 判斷,也許用conditionbaselogic會更好吧(帶監聽)。放在passivebaselogic內部變數

4.被動觸發後,cd的概念,cd內不再check是否生效。

5.注意被動消失觸發的概念。

6.多個conditionlist進行 與 or 或操作。

7.生效前還有個觸發概率的概念

8.目前被動消失型別:通過時間倒計時,或者永久性的。

使用被動還是buff的選擇:

被動更傾向於event、conditionlist、action、多個gameobj離散的組合

buff更傾向於一段時間段內乙個gameobj執行action。不過我們的buff也有個直觀的triggertype可以進行單項ontriger的action

如果是和其它邏輯耦合少、時間段的操作、條件比較少、單一trigger 更傾向於buff實現

如果是和外界邏輯耦合多、event觸發、條件比較多可組合實現 傾向於寫被動實現。

當然被動也可以觸發buff,被動也可以執行時間段內的操作,專案內的triggerself基本等價於時間段的操作了。buff也可以add被動。

使用被動模式FTP的幾點總結

1 如果ftp伺服器處於路由器,防火牆或其他nat裝置之後,建議使用被動模式 passive mode 因為在主動模式下傳輸資料時,由ftp發起的資料傳輸一般會被客戶端閘道器的防火牆阻斷。2 被動模式預設使用21號埠傳輸命令,採用隨機埠傳輸資料。如果ftp伺服器在防火牆之後,一定要在ftp伺服器上指...

被動資訊收集

與目標系統不產 直接互動 server 可以更改解析使用的伺服器可以更為改為8.8.8.8 或者直接使用命令nslookup q any name server dnsdict6 d4 t 16 x sina.com d4 解析出ipv4 ipv6都顯示 t 指定執行緒數 d 指定使用的爆破字典 x...

相關分析總結

在資料分析的過程中,我們常常需要分析兩個或兩個以上現象之間的因果關係,一般來說,常考慮下面的幾種分析方法 相關分析 不需要區分自變數和因變數,兩個或者多個變數之間是平等的關係。通過相關分析可以了解變數之間的密切程度。如 教育事業的發展與科學技術的發展存在著一定的關係,學生的數學成績與物理成績存在著一...