UFO: Alien Invasion
Loading...
Searching...
No Matches
cp_component.cpp File Reference

Aircraft and item components. More...

#include "../../cl_shared.h"
#include "../../../shared/parse.h"
#include "cp_campaign.h"
Include dependency graph for cp_component.cpp:

Go to the source code of this file.

Data Structures

struct  component_type_data_t

Functions

void COMP_ParseComponents (const char *name, const char **text)
 Parses one "components" entry in a .ufo file and writes it into the next free entry in xxxxxxxx (components_t).
components_tCOMP_GetComponentsByID (const char *id)
 Returns components definition by ID.

Variables

static const value_t components_type_vals []

Detailed Description

Aircraft and item components.

Definition in file cp_component.cpp.

Function Documentation

◆ COMP_GetComponentsByID()

components_t * COMP_GetComponentsByID ( const char * id)

Returns components definition by ID.

Parameters
[in]idassemblyId of the component definition.
Returns
Pointer to components_t definition.

Definition at line 145 of file cp_component.cpp.

References components_t::assemblyId, ccs, cgi, ERR_DROP, i, and Q_streq.

Referenced by US_LoadXML(), and US_StoreUFO().

◆ COMP_ParseComponents()

void COMP_ParseComponents ( const char * name,
const char ** text )

Parses one "components" entry in a .ufo file and writes it into the next free entry in xxxxxxxx (components_t).

Parameters
[in]nameThe unique id of a components_t array entry.
[in]textthe whole following text after the "components" definition.
See also
CP_ParseScriptFirst
Todo
Set item links to NONE if needed

Definition at line 50 of file cp_component.cpp.

References component_type_data_t::amount, components_t::assemblyId, components_t::assemblyItem, ccs, cgi, Com_Parse(), COMP_ITEMCOUNT_SCALED, components_type_vals, DEBUG_CLIENT, ERR_DROP, component_type_data_t::id, INVSH_GetItemByID(), INVSH_GetItemByIDSilent(), components_t::itemAmount, components_t::itemAmount2, components_t::items, MAX_ASSEMBLIES, MAX_COMP, name, component_type_data_t::numbercrash, components_t::numItemtypes, OBJZERO, Q_streq, Q_strncpyz(), and components_t::time.

Referenced by CP_ParseScriptFirst().

Variable Documentation

◆ components_type_vals

const value_t components_type_vals[]
static
Initial value:
= {
{"id", V_STRING, offsetof(component_type_data_t, id), 0},
{"amount", V_STRING, offsetof(component_type_data_t, amount), 0},
{"numbercrash", V_STRING, offsetof(component_type_data_t, numbercrash), 0},
{nullptr, V_NULL, 0, 0}
}
@ V_NULL
Definition scripts.h:49
@ V_STRING
Definition scripts.h:58

components type values

Definition at line 37 of file cp_component.cpp.

Referenced by COMP_ParseComponents().