UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
e_event_actorreactionfirechange.cpp
Go to the documentation of this file.
1
4
5
/*
6
Copyright (C) 2002-2025 UFO: Alien Invasion.
7
8
This program is free software; you can redistribute it and/or
9
modify it under the terms of the GNU General Public License
10
as published by the Free Software Foundation; either version 2
11
of the License, or (at your option) any later version.
12
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16
17
See the GNU General Public License for more details.
18
19
You should have received a copy of the GNU General Public License
20
along with this program; if not, write to the Free Software
21
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22
23
*/
24
25
#include "
../../../../client.h
"
26
#include "
../../../cl_localentity.h
"
27
#include "
../../../cl_actor.h
"
28
#include "
../../../cl_hud.h
"
29
#include "
../../../../ui/ui_main.h
"
30
#include "
e_event_actorreactionfirechange.h
"
31
39
void
CL_ActorReactionFireChange
(
const
eventRegister_t
* self,
dbuffer
* msg)
40
{
41
actorHands_t
hand;
42
int
entnum, fmIdx, odIdx;
43
44
NET_ReadFormat
(msg, self->
formatString
, &entnum, &fmIdx, &hand, &odIdx);
45
46
const
le_t
* le =
LE_Get
(entnum);
47
if
(!le)
48
LE_NotFoundError
(entnum);
49
50
character_t
* chr =
CL_ActorGetChr
(le);
51
if
(!chr)
52
return
;
53
54
const
objDef_t
* od =
INVSH_GetItemByIDX
(odIdx);
55
chr->
RFmode
.
set
(hand, fmIdx, od);
56
57
UI_ExecuteConfunc
(
"reactionfire_updated"
);
58
}
CL_ActorGetChr
character_t * CL_ActorGetChr(const le_t *le)
Returns the character information for an actor in the teamlist.
Definition
cl_actor.cpp:155
cl_actor.h
cl_hud.h
HUD related routines.
LE_Get
le_t * LE_Get(int entnum)
Searches all local entities for the one with the searched entnum.
Definition
cl_localentity.cpp:1287
cl_localentity.h
LE_NotFoundError
#define LE_NotFoundError(entnum)
Definition
cl_localentity.h:322
FiremodeSettings::set
void set(const actorHands_t hand, const fireDefIndex_t fmIdx, const objDef_t *weapon)
Definition
chr_shared.h:173
dbuffer
Definition
dbuffer.h:20
client.h
Primary header for client.
CL_ActorReactionFireChange
void CL_ActorReactionFireChange(const eventRegister_t *self, dbuffer *msg)
Network event function for reaction fire mode changes. Responsible for updating the HUD with the info...
Definition
e_event_actorreactionfirechange.cpp:39
e_event_actorreactionfirechange.h
INVSH_GetItemByIDX
const objDef_t * INVSH_GetItemByIDX(int index)
Returns the item that belongs to the given index or nullptr if the index is invalid.
Definition
inv_shared.cpp:266
actorHands_t
actorHands_t
Definition
inv_shared.h:626
NET_ReadFormat
void NET_ReadFormat(dbuffer *buf, const char *format,...)
The user-friendly version of NET_ReadFormat that reads variable arguments from a buffer according to ...
Definition
netpack.cpp:533
character_t
Describes a character with all its attributes.
Definition
chr_shared.h:388
character_t::RFmode
FiremodeSettings RFmode
Definition
chr_shared.h:416
eventRegister_t
Struct that defines one particular event with all its callbacks and data.
Definition
e_main.h:42
eventRegister_t::formatString
const char * formatString
The format string that is used to write and parse this event.
Definition
e_main.h:54
le_t
a local entity
Definition
cl_localentity.h:65
objDef_t
Defines all attributes of objects used in the inventory.
Definition
inv_shared.h:264
UI_ExecuteConfunc
void UI_ExecuteConfunc(const char *fmt,...)
Executes confunc - just to identify those confuncs in the code - in this frame.
Definition
ui_main.cpp:110
ui_main.h
src
client
battlescape
events
event
actor
e_event_actorreactionfirechange.cpp
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0