mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-07-27 14:49:59 -04:00
Remove unnecessary arguments in prop macros and replace prop flags with constants
This commit is contained in:
+92
-171
@@ -1,121 +1,67 @@
|
||||
#define _mkshort(a, b) ((a << 8) | (b & 0xff))
|
||||
#define _mkword(a, b) ((a << 16) | (b & 0xffff))
|
||||
#define _mkshort(a, b) (((a) << 8) | ((b) & 0xff))
|
||||
#define _mkword(a, b) (((a) << 16) | ((b) & 0xffff))
|
||||
|
||||
#define _generic_object(id, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19) \
|
||||
_mkword(scale, id), \
|
||||
_mkword(model, pad), \
|
||||
props1, \
|
||||
props2, \
|
||||
u1, u2, u3, u4, \
|
||||
u5, u6, u7, u8, \
|
||||
u9, u10, u11, u12, \
|
||||
u13, u14, u15, u16, \
|
||||
u17, u18, u19
|
||||
#define _generic_object(type, scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_mkword(scale, type), _mkword(model, pad), flags, flags2, flags3, \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, maxdamage, 0, 0, 0x0fff0000
|
||||
|
||||
#define door(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39, u40, u41, u42, u43, u44, u45, u46, u47, u48, u49, u50, u51) \
|
||||
_generic_object(0x01, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39, \
|
||||
u40, u41, u42, u43, \
|
||||
u44, u45, u46, u47, \
|
||||
u48, u49, u50, u51,
|
||||
#define door(scale, model, pad, flags, flags2, flags3, maxdamage, maxfrac, perimfrac, accel, decel, maxspeed, doorflags, doortype, keyflags, autoclosetime, unk88, sibling, unkc4) \
|
||||
_generic_object(0x01, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
maxfrac, perimfrac, accel, decel, maxspeed, _mkword(doorflags, doortype), \
|
||||
keyflags, autoclosetime, 0, 0, 0, unk88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
sibling, 0, unkc4, 0, 0xff000000, 0, 0, 0,
|
||||
|
||||
#define door_scale(scale) \
|
||||
0x02, scale,
|
||||
|
||||
#define stdobject(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19) \
|
||||
_generic_object(0x03, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19),
|
||||
#define stdobject(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x03, scale, model, pad, flags, flags2, flags3, maxdamage),
|
||||
|
||||
#define key(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, lockbits) \
|
||||
_generic_object(0x04, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
#define key(scale, model, pad, flags, flags2, flags3, lockbits) \
|
||||
_generic_object(0x04, scale, model, pad, flags, flags2, flags3, 1000), \
|
||||
lockbits,
|
||||
|
||||
#define camera(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39, u40, u41, u42, u43, u44, u45) \
|
||||
_generic_object(0x06, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39, \
|
||||
u40, u41, u42, u43, \
|
||||
u44, u45,
|
||||
#define camera(scale, model, pad, flags, flags2, flags3, maxdamage, targetpad, yaw, ymaxspeed, maxdist) \
|
||||
_generic_object(0x06, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
_mkword(targetpad, 0), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, yaw, 0, 0, ymaxspeed, 0, maxdist, 0,
|
||||
|
||||
#define ammocrate(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, ammotype) \
|
||||
_generic_object(0x07, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
#define ammocrate(scale, model, pad, flags, flags2, flags3, maxdamage, ammotype) \
|
||||
_generic_object(0x07, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
ammotype,
|
||||
|
||||
#define weapon(scale, model, chr, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, weapon, u20, u21) \
|
||||
_generic_object(0x08, scale, model, chr, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
_mkword(_mkshort(weapon, 0), 0), \
|
||||
u20, u21,
|
||||
#define weapon(scale, model, chr, flags, flags2, flags3, weapon) \
|
||||
_generic_object(0x08, scale, model, chr, flags, flags2, flags3, 1000), \
|
||||
_mkword(_mkshort(weapon, 0), 0), 0x00ffffff, 0,
|
||||
|
||||
#define chr(unk1, id, pad, body, head, function, target_pad, target_chr, hear_dist, view_dist, props1, bank1flags, team, group, chair, group2, associated) \
|
||||
#define chr(unk1, id, pad, body, head, function, target_pad, target_chr, hear_dist, view_dist, flags, bank1flags, team, group, chair, group2, associated) \
|
||||
0x09, \
|
||||
unk1, \
|
||||
_mkword(id, pad), \
|
||||
_mkword(_mkshort(body, head), function), \
|
||||
_mkword(target_pad, target_chr), \
|
||||
_mkword(hear_dist, view_dist), \
|
||||
props1, \
|
||||
flags, \
|
||||
bank1flags, \
|
||||
_mkword(_mkshort(team, group), chair), \
|
||||
group2, \
|
||||
associated,
|
||||
|
||||
#define singlemonitor(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39, u40, u41, u42, u43, u44, u45, u46, u47, u48, u49) \
|
||||
_generic_object(0x0a, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39, \
|
||||
u40, u41, u42, u43, \
|
||||
u44, u45, u46, u47, \
|
||||
u48, u49,
|
||||
#define singlemonitor(scale, model, pad, flags, flags2, flags3, maxdamage, image) \
|
||||
_generic_object(0x0a, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
_mkword(0xffff, _mkshort(0xff, image)),
|
||||
|
||||
#define multimonitor(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39, u40, u41, u42, u43, u44, u45, u46, u47, u48, u49, u50, u51, u52, u53, u54, u55, u56, u57, u58, u59, u60, u61, u62, u63, u64, u65, u66, u67, u68, u69, u70, u71, u72, u73, u74, u75, u76, u77, u78, u79, u80, u81, u82, u83, u84, u85, u86, u87, u88, u89, u90, u91, u92, u93, u94, u95, u96, u97, u98, u99, u100, u101, u102, u103, u104, u105, u106, u107, u108, u109, u110, u111, u112, u113, u114, u115, u116, u117, u118, u119, u120, u121, u122, u123, u124, u125, u126, u127, u128, u129, u130, u131, u132, u133, u134, u135, u136) \
|
||||
_generic_object(0x0b, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39, \
|
||||
u40, u41, u42, u43, \
|
||||
u44, u45, u46, u47, \
|
||||
u48, u49, u50, u51, \
|
||||
u52, u53, u54, u55, \
|
||||
u56, u57, u58, u59, \
|
||||
u60, u61, u62, u63, \
|
||||
u64, u65, u66, u67, \
|
||||
u68, u69, u70, u71, \
|
||||
u72, u73, u74, u75, \
|
||||
u76, u77, u78, u79, \
|
||||
u80, u81, u82, u83, \
|
||||
u84, u85, u86, u87, \
|
||||
u88, u89, u90, u91, \
|
||||
u92, u93, u94, u95, \
|
||||
u96, u97, u98, u99, \
|
||||
u100, u101, u102, u103, \
|
||||
u104, u105, u106, u107, \
|
||||
u108, u109, u110, u111, \
|
||||
u112, u113, u114, u115, \
|
||||
u116, u117, u118, u119, \
|
||||
u120, u121, u122, u123, \
|
||||
u124, u125, u126, u127, \
|
||||
u128, u129, u130, u131, \
|
||||
u132, u133, u134, u135, \
|
||||
u136,
|
||||
#define multimonitor(scale, model, pad, flags, flags2, flags3, maxdamage, image1, image2, image3, image4) \
|
||||
_generic_object(0x0b, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
|
||||
_mkword(_mkshort(image1, image2), _mkshort(image3, image4)),
|
||||
|
||||
#define autogun(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39) \
|
||||
_generic_object(0x0d, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39,
|
||||
#define autogun(scale, model, pad, flags, flags2, flags3, maxdamage, targetpad, unk64, unk68, unk80, unk84) \
|
||||
_generic_object(0x0d, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
_mkword(targetpad, 0), 0, unk64, unk68, 0, 0, 0, 0, 0, unk80, unk84, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
||||
/**
|
||||
* Link two guns together, which allows them to be dual wielded once both have
|
||||
@@ -124,26 +70,26 @@
|
||||
#define link_guns(gun1offset, gun2offset) \
|
||||
0x0e, _mkword(gun1offset, gun2offset),
|
||||
|
||||
#define debris(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19) \
|
||||
_generic_object(0x0f, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19),
|
||||
#define debris(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x0f, scale, model, pad, flags, flags2, flags3, maxdamage),
|
||||
|
||||
#define hat(scale, model, chr, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19) \
|
||||
_generic_object(0x11, scale, model, chr, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19),
|
||||
#define hat(scale, model, chr, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x11, scale, model, chr, flags, flags2, flags3, maxdamage),
|
||||
|
||||
#define lift_door(dooroffset, liftoffset, stopnum) \
|
||||
0x13, dooroffset, liftoffset, 0, stopnum,
|
||||
|
||||
#define ammocratemulti(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38) \
|
||||
_generic_object(0x14, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38,
|
||||
#define ammocratemulti(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x14, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000, \
|
||||
0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000, \
|
||||
0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000, \
|
||||
0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000, \
|
||||
0xffff0000, 0xffff0000, 0xffff0000,
|
||||
|
||||
#define shield(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22) \
|
||||
_generic_object(0x15, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22,
|
||||
#define shield(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x15, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0x00010000, 0, 0,
|
||||
|
||||
#define tag(id, value) \
|
||||
0x16, _mkword(id, value), 0, 0,
|
||||
@@ -169,30 +115,30 @@
|
||||
#define require_object_thrown(object) \
|
||||
0x1d, object,
|
||||
|
||||
#define require_object_holographed(object, u1, u2) \
|
||||
0x1e, object, u1, u2,
|
||||
#define require_object_holographed(object) \
|
||||
0x1e, object, 0, 0,
|
||||
|
||||
#define require_room_entered(room) \
|
||||
0x20, room,
|
||||
|
||||
#define require_object_thrown_on_target(throw_object, target_object, u1) \
|
||||
0x21, throw_object, target_object, u1,
|
||||
#define require_object_thrown_on_target(throw_object, target_object) \
|
||||
0x21, throw_object, target_object, 0,
|
||||
|
||||
#define briefing(value, text) \
|
||||
0x23, value, text, 0,
|
||||
|
||||
#define rename_object(u1, id, text, text2, text3, text4, text5, u2, u3) \
|
||||
0x25, u1, id, text, text2, text3, text4, text5, u2, u3,
|
||||
#define rename_object(objoffset, weapon, text, text2, text3, text4, text5) \
|
||||
0x25, objoffset, weapon, text, text2, text3, text4, text5, 0, 0,
|
||||
|
||||
#define padlocked_door(dooroffset, lockoffset) \
|
||||
0x26, door, lock, 0,
|
||||
|
||||
#define glass(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20) \
|
||||
_generic_object(0x2a, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20,
|
||||
#define glass(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x2a, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0,
|
||||
|
||||
#define safe(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19) \
|
||||
_generic_object(0x2b, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19),
|
||||
#define safe(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x2b, scale, model, pad, flags, flags2, flags3, maxdamage),
|
||||
|
||||
#define safeitem(item, safe, door) \
|
||||
0x2c, item, safe, door,
|
||||
@@ -200,17 +146,15 @@
|
||||
#define camera2(scale, u1, u2, u3, u4, u5, u6) \
|
||||
_mkword(scale, 0x2e), u1, u2, u3, u4, u5, u6,
|
||||
|
||||
#define tinted_glass(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22) \
|
||||
_generic_object(0x2f, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22,
|
||||
#define tinted_glass(scale, model, pad, flags, flags2, flags3, maxdamage, unk5c) \
|
||||
_generic_object(0x2f, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
unk5c, 0xffff, 0,
|
||||
|
||||
#define lift(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, pad1, pad2, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32) \
|
||||
_generic_object(0x30, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
_mkword(pad1, pad2), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32,
|
||||
#define lift(scale, model, pad, flags, flags2, flags3, maxdamage, pad1, pad2, pad3, pad4, door1, door2, door3, door4, accel, maxspeed, unk84) \
|
||||
_generic_object(0x30, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
_mkword(pad1, pad2), _mkword(pad3, pad4), \
|
||||
door1, door2, door3, door4, \
|
||||
0, 0, accel, maxspeed, unk84, 0, 0, 0,
|
||||
|
||||
/**
|
||||
* Link some scenery objects together so they can be toggled as a group.
|
||||
@@ -237,59 +181,36 @@
|
||||
#define blocked_path(objoffset, waypoint1, waypoint2) \
|
||||
0x32, objoffset, _mkword(waypoint1, waypoint2), 0,
|
||||
|
||||
#define hoverbike(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39, u40, u41, u42, u43, u44, u45, u46, u47, u48, u49, u50, u51, u52) \
|
||||
_generic_object(0x33, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39, \
|
||||
u40, u41, u42, u43, \
|
||||
u44, u45, u46, u47, \
|
||||
u48, u49, u50, u51, \
|
||||
u52,
|
||||
#define hoverbike(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x33, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0x01010000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
||||
#define endprops \
|
||||
0x34,
|
||||
|
||||
#define hover_prop(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35) \
|
||||
_generic_object(0x35, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35,
|
||||
#define hover_prop(scale, model, pad, flags, flags2, flags3, maxdamage, unk5c) \
|
||||
_generic_object(0x35, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
unk5c, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
||||
#define fan(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25) \
|
||||
_generic_object(0x36, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25,
|
||||
#define fan(scale, model, pad, flags, flags2, flags3, maxdamage, maxspeed, accel, on) \
|
||||
_generic_object(0x36, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0, 0, maxspeed, 0, accel, on,
|
||||
|
||||
#define hovercar(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34) \
|
||||
_generic_object(0x37, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34,
|
||||
#define hovercar(scale, model, pad, flags, flags2, flags3, maxdamage, unk5c) \
|
||||
_generic_object(0x37, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
unk5c, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
||||
#define pad_effect(effect, pad) \
|
||||
0x38, effect, pad,
|
||||
|
||||
#define chopper(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u32, u33, u34, u35, u36, u37, u38, u39, u40, u41, u42, u43, u44, u45, u46, u47, u48, u49, u50, u51, u52, u53, u54) \
|
||||
_generic_object(0x39, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23, \
|
||||
u24, u25, u26, u27, \
|
||||
u28, u29, u30, u31, \
|
||||
u32, u33, u34, u35, \
|
||||
u36, u37, u38, u39, \
|
||||
u40, u41, u42, u43, \
|
||||
u44, u45, u46, u47, \
|
||||
u48, u49, u50, u51, \
|
||||
u52, u53, u54,
|
||||
#define chopper(scale, model, pad, flags, flags2, flags3, maxdamage, ailist) \
|
||||
_generic_object(0x39, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
ailist, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
|
||||
#define remote_mine(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22) \
|
||||
_generic_object(0x3a, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22,
|
||||
#define mine(scale, model, pad, flags, flags2, flags3, maxdamage, weapon) \
|
||||
_generic_object(0x3a, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
_mkword(_mkshort(weapon, 0), 0), 1, 0,
|
||||
|
||||
#define escastep(scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19, u20, u21, u22, u23) \
|
||||
_generic_object(0x3b, scale, model, pad, props1, props2, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16, u17, u18, u19), \
|
||||
u20, u21, u22, u23,
|
||||
#define escastep(scale, model, pad, flags, flags2, flags3, maxdamage) \
|
||||
_generic_object(0x3b, scale, model, pad, flags, flags2, flags3, maxdamage), \
|
||||
0, 0, 0, 0,
|
||||
|
||||
Reference in New Issue
Block a user