2class CameraToolsMenuServer
4 ref array<Man> m_Subscribers =
new array<Man>;
9 case ERPCs.DIAG_CAMERATOOLS_CAM_DATA:
11 Param4<vector, vector,float,float> p4 =
new Param4<vector, vector,float,float>(vector.Zero, vector.Zero,0,0);
14 foreach (
int index, Man p : m_Subscribers)
18 g_Game.RPCSingleParam(p,
ERPCs.DIAG_CAMERATOOLS_CAM_DATA, p4,
true, p.GetIdentity());
22 m_Subscribers.Remove(index);
28 case ERPCs.DIAG_CAMERATOOLS_CAM_SUBSCRIBE:
30 Param2<bool, Man> par2 =
new Param2<bool, Man>(
false,null);
34 bool enable = par2.param1;
35 Man player = par2.param2;
38 foreach (
int i, Man m : m_Subscribers)
44 m_Subscribers.Remove(i);
48 m_Subscribers[i] = player;
53 m_Subscribers.Insert(player);
62class CameraToolsMenuClient
66 void ~CameraToolsMenuClient()
92 Param4<vector, vector,float,float> p4 =
new Param4<vector, vector,float,float>(vector.Zero, vector.Zero,0,0);
95 vector pos = p4.param1;
96 vector dir = p4.param2;
97 float plane = p4.param3;
98 float fov = p4.param4 * Math.RAD2DEG;
103 Math3D.DirectionAndUpMatrix(dir,vector.Up,mat);
override void OnRPC(ParamsReadContext ctx)
proto bool Read(void value_in)
Serializer ParamsReadContext