3 #include "vehicles_include.qc"
5 // VEHICLE PLUGIN SYSTEM
6 entity vehicle_info[VEH_MAXCOUNT];
7 entity dummy_vehicle_info;
9 void vehicles_common_initialize()
12 precache_model("models/vehicles/bomblet.md3");
13 precache_model("models/vehicles/clusterbomb.md3");
14 precache_model("models/vehicles/clusterbomb_fragment.md3");
15 precache_model("models/vehicles/rocket01.md3");
16 precache_model("models/vehicles/rocket02.md3");
18 precache_sound ("vehicles/alarm.wav");
19 precache_sound ("vehicles/alarm_shield.wav");
22 precache_sound("onslaught/ons_hit2.wav");
23 precache_sound("onslaught/electricity_explode.wav");
25 addstat(STAT_HUD, AS_INT, hud);
26 addstat(STAT_VEHICLESTAT_HEALTH, AS_INT, vehicle_health);
27 addstat(STAT_VEHICLESTAT_SHIELD, AS_INT, vehicle_shield);
28 addstat(STAT_VEHICLESTAT_ENERGY, AS_INT, vehicle_energy);
30 addstat(STAT_VEHICLESTAT_W2MODE, AS_INT, vehicle_weapon2mode);
32 addstat(STAT_VEHICLESTAT_AMMO1, AS_INT, vehicle_ammo1);
33 addstat(STAT_VEHICLESTAT_RELOAD1, AS_INT, vehicle_reload1);
35 addstat(STAT_VEHICLESTAT_AMMO2, AS_INT, vehicle_ammo2);
36 addstat(STAT_VEHICLESTAT_RELOAD2, AS_INT, vehicle_reload2);
40 void register_vehicle(float id, float(float) func, float vehicleflags, vector min_s, vector max_s, string modelname, string headmodelname, string hudmodelname, string headtag, string hudtag, string viewtag, string shortname, string vname)
43 vehicle_info[id - 1] = e = spawn();
44 e.classname = "vehicle_info";
46 e.netname = shortname;
47 e.vehicle_name = vname;
48 e.vehicle_func = func;
50 e.spawnflags = vehicleflags;
54 e.head_model = headmodelname;
55 e.hud_model = hudmodelname;
61 vehicles_common_initialize();
64 float v_null(float dummy) { return 0; }
65 void register_vehicles_done()
67 dummy_vehicle_info = spawn();
68 dummy_vehicle_info.classname = "vehicle_info";
69 dummy_vehicle_info.vehicleid = 0; // you can recognize dummies by this
70 dummy_vehicle_info.netname = "";
71 dummy_vehicle_info.vehicle_name = "Vehicle";
72 dummy_vehicle_info.vehicle_func = v_null;
73 dummy_vehicle_info.mdl = "";
74 dummy_vehicle_info.mins = '-0 -0 -0';
75 dummy_vehicle_info.maxs = '0 0 0';
76 dummy_vehicle_info.model = "";
77 dummy_vehicle_info.head_model = "";
78 dummy_vehicle_info.hud_model = "";
80 entity get_vehicleinfo(float id)
83 if(id < VEH_FIRST || id > VEH_LAST)
84 return dummy_vehicle_info;
85 m = vehicle_info[id - 1];
88 return dummy_vehicle_info;