File: subsystem.h

package info (click to toggle)
freespace2 24.2.0%2Brepack-1
  • links: PTS, VCS
  • area: non-free
  • in suites: forky, sid
  • size: 43,716 kB
  • sloc: cpp: 595,001; ansic: 21,741; python: 1,174; sh: 457; makefile: 248; xml: 181
file content (28 lines) | stat: -rw-r--r-- 677 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#pragma once

#include "scripting/ade_api.h"
#include "object/object.h"
#include "ship/ship.h"

namespace scripting {
namespace api {


struct ship_subsys_h
{
	object_h objh;
	ship_subsys *ss;	//Pointer to subsystem, or NULL for the hull

	ship_subsys_h();
	ship_subsys_h(object *objp_in, ship_subsys *sub);

	bool isValid() const;

	static void serialize(lua_State* /*L*/, const scripting::ade_table_entry& /*tableEntry*/, const luacpp::LuaValue& value, ubyte* data, int& packet_size);
	static void deserialize(lua_State* /*L*/, const scripting::ade_table_entry& /*tableEntry*/, char* data_ptr, ubyte* data, int& offset);
};
DECLARE_ADE_OBJ(l_Subsystem, ship_subsys_h);

}
}