HLSDK系列 怎麼增加一種新實體

2022-08-11 15:15:19 字數 904 閱讀 6404

你平常肯定接觸到很多比如 info_player_start hostage info_target 之類的實體,這裡就解釋一下怎麼建立一種新的實體。

首先建立乙個新的 .h 檔案(當然你寫在現有的檔案上也可以),建立乙個基於 cbaseentity 的類,例如:

1

class cmyentity : public

cbaseentity

2

在 .cpp 檔案裡編寫這個類的函式體,例如:

1

void cmyentity::spawn(void)2

寫好了類還沒完事,因為引擎還不認識你這個實體,你需要使用 link_entity_to_class 巨集來讓你的類和乙個名稱關聯起來,這個名稱就是你的實體名。例如:

注:也是寫在 .cpp 裡

1 link_entity_to_class(myentity, cmyentity);

完成這些步驟,你就可以用 create_named_entity (也就是 g_engfuncs.pfncreatenamedentity)來建立出你的實體了,例如:

1 edict_t *pent = create_named_entity(make_string("

myentity

"));23

if (!pent)

4return;5

6 cmyentity *pentity = (cmyentity *)cbaseentity::instance(pent);

78 pentity->spawn();910

//your code here ...

好了步驟就這些了,想實現各種各樣的功能,不要忘了參考 hlsdk 的**,裡面有你想要的!

一種新的乘法

做厭了乘法計算題的卡特,有一天突發奇想,創造了一種新的乘法運算法則。在這套法則裡,x y等於乙個取自x 乙個取自y的所有數字對的乘積的和。比方說,123 45等於1 4 1 5 2 4 2 5 3 4 3 5 54。對於2個給定的數x y 1 x,y 長整型最大數 你的任務是,用新的乘法法則計算x ...

一種新的測試理念

文章分類 軟體開發管理 效能測試可以增加一種新的測試理念,當我們做乙個破壞性測試時,確定乙個破壞點以及相關策略,會得到乙個期望的測試結果。這是測試系統的健壯性。但如果我們輸入的是乙個不確定的破壞點,該輸入會遵循業務邏輯自身繁殖和變異,會產生無法預知的破壞性時,我們這個測試就是不止對系統自身的健壯性的...

一種新的布局方式

通過王老師的講解,讓我認識到了自己的不足,也學到了一種新的布局方式 主要是宋老師 恐嚇 我們,說如果我們去面試,面試官如果要我們使用這種方式,我們怎麼辦,怎麼解決,我才想深入了解下的 王老師提出了兩個問題,她自己也為我們解答了,現在需要我們自己去總結,化為自己的知識。第乙個問題 為什麼會兩個內聯標籤...