DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
CfgBunkerBroadcastHandler.c
См. документацию.
2{
3 private static bool m_Initialized;
4
5 private static const string m_ConfigFilePath = "cfgbunkerbroadcast.json";
6 private static ref BunkerBroadcastConfigInstance m_Data = new BunkerBroadcastConfigInstance();
7
8 static bool LoadData()
9 {
10 if (m_Initialized)
11 return true;
12
13 m_Initialized = false;
14
16 return false;
17
18 string worldName;
19 GetGame().GetWorldName(worldName);
20
21 string errorMessage, path;
22
23 path = string.Format("$mission:%1", m_ConfigFilePath);
24 if (!JsonFileLoader<BunkerBroadcastConfigInstance>.LoadFile(path, m_Data, errorMessage))
25 {
26 if (!FileExist(string.Format("$mission:%1", m_ConfigFilePath)))
27 path = string.Format("dz/worlds/%1/ce/%2", worldName, m_ConfigFilePath);
28
29 if (!JsonFileLoader<BunkerBroadcastConfigInstance>.LoadFile(path, m_Data, errorMessage))
30 {
31 ErrorEx(errorMessage);
32 return false;
33 }
34 }
35
36 m_Initialized = m_Data.IsValid();
37
38 return m_Initialized;
39 }
40
41 static bool IsInitialized()
42 {
43 return m_Initialized;
44 }
45
46 static BunkerBroadcastConfigInstance GetData()
47 {
48 return m_Data;
49 }
50
51 static void Spawn()
52 {
54 return;
55
56 foreach (BunkerBroadcastProxySpawn proxySpawn : m_Data.proxies)
57 SpawnBunker(proxySpawn);
58 }
59
60 static void SyncDataSend(PlayerIdentity identity)
61 {
62 GetGame().RPCSingleParam(null, ERPCs.RPC_BUNKERBROADCAST_CONFIG_SYNC, new Param1<BunkerBroadcastConfigInstance>(m_Data), true, identity);
63 }
64
65 static void OnRPC(ParamsReadContext ctx)
66 {
67 Param1<BunkerBroadcastConfigInstance> data = new Param1<BunkerBroadcastConfigInstance>(null);
68
69 if (ctx.Read(data))
70 {
71 m_Data = data.param1;
72 m_Initialized = m_Data.IsValid();
73 }
74 else
75 {
76 ErrorEx("CfgBunkerBroadcast - client failed to read incoming data");
77 }
78 }
79
80 private static void SpawnBunker(BunkerBroadcastProxySpawn proxySpawn)
81 {
82 int flags = ECE_SETUP | ECE_NOLIFETIME;
83
84 Object proxy = g_Game.CreateObjectEx("BunkerBroadcastProxy", vector.ArrayToVec(proxySpawn.position), flags);
85 if (!proxy)
86 PrintToRPT("SpawnBunker failed to spawn Proxy at " + vector.ArrayToVec(proxySpawn.position));
87 }
88}
const int ECE_SETUP
Определения CentralEconomy.c:9
const int ECE_NOLIFETIME
Определения CentralEconomy.c:30
DayZGame g_Game
Определения DayZGame.c:4074
ERPCs
Определения ERPCs.c:2
string path
Определения OptionSelectorMultistate.c:142
static bool LoadData()
Определения CfgBunkerBroadcastHandler.c:8
static void SyncDataSend(PlayerIdentity identity)
Определения CfgBunkerBroadcastHandler.c:60
static void OnRPC(ParamsReadContext ctx)
Определения CfgBunkerBroadcastHandler.c:65
static const string m_ConfigFilePath
Определения CfgBunkerBroadcastHandler.c:5
static BunkerBroadcastConfigInstance GetData()
Определения CfgBunkerBroadcastHandler.c:46
static bool IsInitialized()
Определения CfgBunkerBroadcastHandler.c:41
static ref BunkerBroadcastConfigInstance m_Data
Определения CfgBunkerBroadcastHandler.c:6
static void SpawnBunker(BunkerBroadcastProxySpawn proxySpawn)
Определения CfgBunkerBroadcastHandler.c:80
static bool m_Initialized
Определения CfgBunkerBroadcastHandler.c:3
static void Spawn()
Определения CfgBunkerBroadcastHandler.c:51
static int GetBunkerBroadcastEnabled()
Определения CfgGameplayHandler.c:141
Определения ObjectTyped.c:2
The class that will be instanced (moddable)
Определения gameplay.c:389
proto bool Read(void value_in)
static vector ArrayToVec(float arr[])
Convert static array of floats into a vector.
Определения EnConvert.c:536
Определения EnConvert.c:119
Serializer ParamsReadContext
Определения gameplay.c:15
DayZGame GetGame()
Определения gameplay.c:636
proto void PrintToRPT(void var)
Prints content of variable to RPT file (performance warning - each write means fflush!...
enum ShapeType ErrorEx
proto bool FileExist(string name)
Check existence of file.