DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
Bot_Tests.c
См. документацию.
1#ifdef ROBOCLIENT
2class BotTestSwapWithCorpse : BotStateBase
3{
4};
5
6class BotTestSwapInternal : BotStateBase
7{
8 EntityAI m_Entity1;
9 EntityAI m_Entity2;
10
11 void BotTestSwapInternal (Bot bot = NULL, BotStateBase parent = NULL)
12 { }
13
14 override void OnEntry (BotEventBase e)
15 {
16 super.OnEntry(e);
17 GameInventory ownerInventory = m_Owner.GetInventory();
18 EntityAI j = ownerInventory.CreateAttachment("Jeans_Blue");
19 m_Entity1 = j.GetInventory().CreateEntityInCargo("Rag");
20 EntityAI s = ownerInventory.CreateInInventory("TacticalShirt_Grey");
21 m_Entity2 = s.GetInventory().CreateEntityInCargo("Roadflare");
22 }
23
24 override void OnUpdate (float dt)
25 {
26 super.OnUpdate(dt);
27
28 if (m_Entity1 && m_Entity2)
29 {
30 if (m_Owner.GetInventory().CanSwapEntitiesEx(m_Entity1, m_Entity2))
31 {
32 botDebugPrint("[bot] + " + m_Owner + " -> swap item=" + m_Entity1 + " bot=" + m_Owner);
33 m_Owner.PredictiveSwapEntities(m_Entity1, m_Entity2);
34 }
35 else if (m_Owner.GetInventory().CanSwapEntitiesEx(m_Entity2, m_Entity1))
36 {
37 botDebugPrint("[bot] + " + m_Owner + " <- swap item=" + m_Entity2 + " bot=" + m_Owner);
38 m_Owner.PredictiveSwapEntities(m_Entity2, m_Entity1);
39 }
40 }
41 }
42};
43
44
45class BotTestSwapInternalC2H : BotStateBase
46{
47 EntityAI m_Entity1;
48 EntityAI m_Entity2;
49
50 void BotTestSwapInternalC2H (Bot bot = NULL, BotStateBase parent = NULL)
51 { }
52
53 override void OnEntry (BotEventBase e)
54 {
55 super.OnEntry(e);
56 EntityAI j = m_Owner.GetInventory().CreateAttachment("Jeans_Blue");
57 m_Entity1 = j.GetInventory().CreateEntityInCargo("Rag");
58 EntityAI s = m_Owner.GetInventory().CreateInInventory("TacticalShirt_Grey");
59 m_Entity2 = s.GetInventory().CreateEntityInCargo("Roadflare");
61 }
62
63 override void OnUpdate (float dt)
64 {
65 super.OnUpdate(dt);
66
67 if (m_Entity1 && m_Entity2)
68 {
69 if (m_Owner.GetInventory().CanSwapEntitiesEx(m_Entity1, m_Entity2))
70 {
71 botDebugPrint("[bot] + " + m_Owner + " -> swap item=" + m_Entity1 + " bot=" + m_Owner);
72 m_Owner.PredictiveSwapEntities(m_Entity1, m_Entity2);
73 }
74 else if (m_Owner.GetInventory().CanSwapEntitiesEx(m_Entity2, m_Entity1))
75 {
76 botDebugPrint("[bot] + " + m_Owner + " <- swap item=" + m_Entity2 + " bot=" + m_Owner);
77 m_Owner.PredictiveSwapEntities(m_Entity2, m_Entity1);
78 }
79 }
80 }
81};
82
83
84class BotTestSwapG2H : BotStateBase
85{
86 EntityAI m_Entity1;
87 EntityAI m_Entity2;
88
89 void BotTestSwapG2H (Bot bot = NULL, BotStateBase parent = NULL)
90 { }
91
92 override void OnEntry (BotEventBase e)
93 {
94 super.OnEntry(e);
95 EntityAI j = m_Owner.GetInventory().CreateAttachment("Jeans_Blue");
96 m_Entity1 = j.GetInventory().CreateEntityInCargo("Rag");
97 EntityAI s = m_Owner.GetInventory().CreateInInventory("TacticalShirt_Grey");
98 m_Entity2 = s.GetInventory().CreateEntityInCargo("Roadflare");
100 }
101
102 override void OnUpdate (float dt)
103 {
104 super.OnUpdate(dt);
105
106 /*if (m_Entity1 && m_Entity2)
107 {
108 if (m_Owner.GetInventory().CanSwapEntities(m_Entity1, m_Entity2))
109 {
110 botDebugPrint("[bot] + " + m_Owner + " -> swap item=" + m_Entity1 + " bot=" + m_Owner);
111 m_Owner.PredictiveSwapEntities(m_Entity1, m_Entity2);
112 }
113 else if (m_Owner.GetInventory().CanSwapEntities(m_Entity2, m_Entity1))
114 {
115 botDebugPrint("[bot] + " + m_Owner + " <- swap item=" + m_Entity2 + " bot=" + m_Owner);
116 m_Owner.PredictiveSwapEntities(m_Entity2, m_Entity1);
117 }
118 }*/
119 }
120};
121#endif
class LogManager EntityAI
HandStateEquipped OnEntry
Определения WeaponChambering.c:292
enum ProcessDirectDamageFlags m_Owner
override bool PredictiveDropEntity(notnull EntityAI item)
Определения 3_Game/DayZ/Entities/Man.c:128
void PredictiveTakeEntityToHands(EntityAI item)
Определения 3_Game/DayZ/Entities/Man.c:178
EntityAI CreateInInventory(string type)
creates entity somewhere in inventory
proto native EntityAI CreateAttachment(string typeName)
Create Entity of specified type as attachment of entity.
override void OnEntry(HandEventBase e)
Определения Hand_States.c:34
proto native void OnUpdate()
Определения 3_Game/DayZ/tools/tools.c:349