-
Notifications
You must be signed in to change notification settings - Fork 34
Expand file tree
/
Copy pathLuaBindingsEntities.cpp
More file actions
1404 lines (1237 loc) · 91.9 KB
/
LuaBindingsEntities.cpp
File metadata and controls
1404 lines (1237 loc) · 91.9 KB
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// Make sure that binding definition files are always set to NOT use pre-compiled headers and conformance mode (/permissive) otherwise everything will be on fire!
#include "LuaBindingRegisterDefinitions.h"
#include "PieSlice.h"
#include "SoundSet.h"
using namespace RTE;
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Entity) {
return luabind::class_<Entity>("Entity")
.def(luabind::tostring(luabind::const_self))
.property("ClassName", &Entity::GetClassName)
.property("PresetName", &Entity::GetPresetName, &LuaAdaptersEntity::SetPresetName)
.property("Description", &Entity::GetDescription, &Entity::SetDescription)
.property("IsOriginalPreset", &Entity::IsOriginalPreset)
.property("ModuleID", &Entity::GetModuleID)
.property("ModuleName", &Entity::GetModuleName)
.property("RandomWeight", &Entity::GetRandomWeight)
.property("Groups", &Entity::GetGroups, luabind::return_stl_iterator)
.def("Clone", &LuaAdaptersEntityClone::CloneEntity)
.def("Reset", &Entity::Reset)
.def("GetModuleAndPresetName", &Entity::GetModuleAndPresetName)
.def("AddToGroup", &Entity::AddToGroup)
.def("RemoveFromGroup", &Entity::RemoveFromGroup)
.def("IsInGroup", &Entity::IsInGroup);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, ACDropShip) {
return ConcreteTypeLuaClassDefinition(ACDropShip, ACraft)
.property("RightEngine", &ACDropShip::GetRightThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACDropShipSetRightThruster)
.property("LeftEngine", &ACDropShip::GetLeftThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACDropShipSetLeftThruster)
.property("RightThruster", &ACDropShip::GetURightThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACDropShipSetURightThruster)
.property("LeftThruster", &ACDropShip::GetULeftThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACDropShipSetULeftThruster)
.property("RightHatch", &ACDropShip::GetRightHatch, &LuaAdaptersPropertyOwnershipSafetyFaker::ACDropShipSetRightHatch)
.property("LeftHatch", &ACDropShip::GetLeftHatch, &LuaAdaptersPropertyOwnershipSafetyFaker::ACDropShipSetLeftHatch)
.property("MaxEngineAngle", &ACDropShip::GetMaxEngineAngle, &ACDropShip::SetMaxEngineAngle)
.property("LateralControlSpeed", &ACDropShip::GetLateralControlSpeed, &ACDropShip::SetLateralControlSpeed)
.property("LateralControl", &ACDropShip::GetLateralControl)
.property("HoverHeightModifier", &ACDropShip::GetHoverHeightModifier, &ACDropShip::SetHoverHeightModifier)
.def("DetectObstacle", &ACDropShip::DetectObstacle)
.def("GetAltitude", &ACDropShip::GetAltitude);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, ACrab) {
return ConcreteTypeLuaClassDefinition(ACrab, Actor)
.def(luabind::constructor<>())
.property("Turret", &ACrab::GetTurret, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetTurret)
.property("Jetpack", &ACrab::GetJetpack, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetJetpack)
.property("LeftFGLeg", &ACrab::GetLeftFGLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetLeftFGLeg)
.property("LeftBGLeg", &ACrab::GetLeftBGLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetLeftBGLeg)
.property("RightFGLeg", &ACrab::GetRightFGLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetRightFGLeg)
.property("RightBGLeg", &ACrab::GetRightBGLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetRightBGLeg)
.property("StrideSound", &ACrab::GetStrideSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ACrabSetStrideSound)
.property("StrideFrame", &ACrab::StrideFrame)
.property("EquippedItem", &ACrab::GetEquippedItem)
.property("FirearmIsReady", &ACrab::FirearmIsReady)
.property("FirearmIsEmpty", &ACrab::FirearmIsEmpty)
.property("FirearmNeedsReload", &ACrab::FirearmNeedsReload)
.property("FirearmIsSemiAuto", &ACrab::FirearmIsSemiAuto)
.property("FirearmActivationDelay", &ACrab::FirearmActivationDelay)
.property("AimRangeUpperLimit", &ACrab::GetAimRangeUpperLimit, &ACrab::SetAimRangeUpperLimit)
.property("AimRangeLowerLimit", &ACrab::GetAimRangeLowerLimit, &ACrab::SetAimRangeLowerLimit)
.def("ReloadFirearms", &ACrab::ReloadFirearms)
.def("IsWithinRange", &ACrab::IsWithinRange)
.def("Look", &ACrab::Look)
.def("LookForMOs", &ACrab::LookForMOs)
.def("GetLimbPath", &ACrab::GetLimbPath)
.def("GetLimbPathTravelSpeed", &ACrab::GetLimbPathTravelSpeed)
.def("SetLimbPathTravelSpeed", &ACrab::SetLimbPathTravelSpeed)
.def("GetLimbPathPushForce", &ACrab::GetLimbPathPushForce)
.def("SetLimbPathPushForce", &ACrab::SetLimbPathPushForce)
.enum_("Side")[luabind::value("LEFTSIDE", ACrab::Side::LEFTSIDE),
luabind::value("RIGHTSIDE", ACrab::Side::RIGHTSIDE),
luabind::value("SIDECOUNT", ACrab::Side::SIDECOUNT)]
.enum_("Layer")[luabind::value("FGROUND", ACrab::Layer::FGROUND),
luabind::value("BGROUND", ACrab::Layer::BGROUND)]
.enum_("DeviceHandlingState")[luabind::value("STILL", ACrab::DeviceHandlingState::STILL),
luabind::value("POINTING", ACrab::DeviceHandlingState::POINTING),
luabind::value("SCANNING", ACrab::DeviceHandlingState::SCANNING),
luabind::value("AIMING", ACrab::DeviceHandlingState::AIMING),
luabind::value("FIRING", ACrab::DeviceHandlingState::FIRING),
luabind::value("THROWING", ACrab::DeviceHandlingState::THROWING),
luabind::value("DIGGING", ACrab::DeviceHandlingState::DIGGING)]
.enum_("SweepState")[luabind::value("NOSWEEP", ACrab::SweepState::NOSWEEP),
luabind::value("SWEEPINGUP", ACrab::SweepState::SWEEPINGUP),
luabind::value("SWEEPUPPAUSE", ACrab::SweepState::SWEEPUPPAUSE),
luabind::value("SWEEPINGDOWN", ACrab::SweepState::SWEEPINGDOWN),
luabind::value("SWEEPDOWNPAUSE", ACrab::SweepState::SWEEPDOWNPAUSE)]
.enum_("DigState")[luabind::value("NOTDIGGING", ACrab::DigState::NOTDIGGING),
luabind::value("PREDIG", ACrab::DigState::PREDIG),
luabind::value("STARTDIG", ACrab::DigState::STARTDIG),
luabind::value("TUNNELING", ACrab::DigState::TUNNELING),
luabind::value("FINISHINGDIG", ACrab::DigState::FINISHINGDIG),
luabind::value("PAUSEDIGGER", ACrab::DigState::PAUSEDIGGER)]
.enum_("JumpState")[luabind::value("NOTJUMPING", ACrab::JumpState::NOTJUMPING),
luabind::value("FORWARDJUMP", ACrab::JumpState::FORWARDJUMP),
luabind::value("PREJUMP", ACrab::JumpState::PREUPJUMP),
luabind::value("UPJUMP", ACrab::JumpState::UPJUMP),
luabind::value("APEXJUMP", ACrab::JumpState::APEXJUMP),
luabind::value("LANDJUMP", ACrab::JumpState::LANDJUMP)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, ACraft) {
return AbstractTypeLuaClassDefinition(ACraft, Actor)
.property("HatchState", &ACraft::GetHatchState)
.property("HatchOpenSound", &ACraft::GetHatchOpenSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ACraftSetHatchOpenSound)
.property("HatchCloseSound", &ACraft::GetHatchCloseSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ACraftSetHatchCloseSound)
.property("CrashSound", &ACraft::GetCrashSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ACraftSetCrashSound)
.property("CanEnterOrbit", &ACraft::GetCanEnterOrbit, &ACraft::SetCanEnterOrbit)
.property("MaxPassengers", &ACraft::GetMaxPassengers)
.property("DeliveryDelayMultiplier", &ACraft::GetDeliveryDelayMultiplier)
.property("ScuttleOnDeath", &ACraft::GetScuttleOnDeath, &ACraft::SetScuttleOnDeath)
.property("HatchDelay", &ACraft::GetHatchDelay, &ACraft::SetHatchDelay)
.def("OpenHatch", &ACraft::OpenHatch)
.def("CloseHatch", &ACraft::CloseHatch)
.enum_("HatchState")[luabind::value("CLOSED", ACraft::HatchState::CLOSED),
luabind::value("OPENING", ACraft::HatchState::OPENING),
luabind::value("OPEN", ACraft::HatchState::OPEN),
luabind::value("CLOSING", ACraft::HatchState::CLOSING),
luabind::value("HatchStateCount", ACraft::HatchState::HatchStateCount)]
.enum_("Side")[luabind::value("RIGHT", ACraft::Side::RIGHT),
luabind::value("LEFT", ACraft::Side::LEFT)]
.enum_("CraftDeliverySequence")[luabind::value("FALL", ACraft::CraftDeliverySequence::FALL),
luabind::value("LAND", ACraft::CraftDeliverySequence::LAND),
luabind::value("STANDBY", ACraft::CraftDeliverySequence::STANDBY),
luabind::value("UNLOAD", ACraft::CraftDeliverySequence::UNLOAD),
luabind::value("LAUNCH", ACraft::CraftDeliverySequence::LAUNCH),
luabind::value("UNSTICK", ACraft::CraftDeliverySequence::UNSTICK)]
.enum_("AltitudeMoveState")[luabind::value("HOVER", ACraft::AltitudeMoveState::HOVER),
luabind::value("DESCEND", ACraft::AltitudeMoveState::DESCEND),
luabind::value("ASCEND", ACraft::AltitudeMoveState::ASCEND)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, ACRocket) {
return ConcreteTypeLuaClassDefinition(ACRocket, ACraft)
.property("RightLeg", &ACRocket::GetRightLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetRightLeg)
.property("LeftLeg", &ACRocket::GetLeftLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetLeftLeg)
.property("MainEngine", &ACRocket::GetMainThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetMainThruster)
.property("LeftEngine", &ACRocket::GetLeftThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetLeftThruster)
.property("RightEngine", &ACRocket::GetRightThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetRightThruster)
.property("LeftThruster", &ACRocket::GetULeftThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetULeftThruster)
.property("RightThruster", &ACRocket::GetURightThruster, &LuaAdaptersPropertyOwnershipSafetyFaker::ACRocketSetURightThruster)
.property("GearState", &ACRocket::GetGearState)
.enum_("LandingGearState")[luabind::value("RAISED", ACRocket::LandingGearState::RAISED),
luabind::value("LOWERED", ACRocket::LandingGearState::LOWERED),
luabind::value("LOWERING", ACRocket::LandingGearState::LOWERING),
luabind::value("RAISING", ACRocket::LandingGearState::RAISING),
luabind::value("GearStateCount", ACRocket::LandingGearState::GearStateCount)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Actor) {
return ConcreteTypeLuaClassDefinition(Actor, MOSRotating)
.def(luabind::constructor<>())
.property("PlayerControllable", &Actor::IsPlayerControllable, &Actor::SetPlayerControllable)
.property("BodyHitSound", &Actor::GetBodyHitSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ActorSetBodyHitSound)
.property("AlarmSound", &Actor::GetAlarmSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ActorSetAlarmSound)
.property("PainSound", &Actor::GetPainSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ActorSetPainSound)
.property("DeathSound", &Actor::GetDeathSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ActorSetDeathSound)
.property("DeviceSwitchSound", &Actor::GetDeviceSwitchSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ActorSetDeviceSwitchSound)
.property("ImpulseDamageThreshold", &Actor::GetTravelImpulseDamage, &Actor::SetTravelImpulseDamage)
.property("StableRecoveryDelay", &Actor::GetStableRecoverDelay, &Actor::SetStableRecoverDelay)
.property("CanRun", &Actor::GetCanRun, &Actor::SetCanRun)
.property("CrouchWalkSpeedMultiplier", &Actor::GetCrouchWalkSpeedMultiplier, &Actor::SetCrouchWalkSpeedMultiplier)
.property("Status", &Actor::GetStatus, &Actor::SetStatus)
.property("MovementState", &Actor::GetMovementState, &Actor::SetMovementState)
.property("Health", &Actor::GetHealth, &Actor::SetHealth)
.property("PrevHealth", &Actor::GetPrevHealth)
.property("MaxHealth", &Actor::GetMaxHealth, &Actor::SetMaxHealth)
.property("InventoryMass", &Actor::GetInventoryMass)
.property("GoldCarried", &Actor::GetGoldCarried, &Actor::SetGoldCarried)
.property("AimRange", &Actor::GetAimRange, &Actor::SetAimRange)
.property("CPUPos", &Actor::GetCPUPos)
.property("EyePos", &Actor::GetEyePos)
.property("HolsterOffset", &Actor::GetHolsterOffset, &Actor::SetHolsterOffset)
.property("ReloadOffset", &Actor::GetReloadOffset, &Actor::SetReloadOffset)
.property("ViewPoint", &Actor::GetViewPoint, &Actor::SetViewPoint)
.property("ItemInReach", &Actor::GetItemInReach, &Actor::SetItemInReach)
.property("SharpAimProgress", &Actor::GetSharpAimProgress)
.property("Height", &Actor::GetHeight)
.property("AIMode", &Actor::GetAIMode, &Actor::SetAIMode)
.property("DeploymentID", &Actor::GetDeploymentID)
.property("PassengerSlots", &Actor::GetPassengerSlots, &Actor::SetPassengerSlots)
.property("Perceptiveness", &Actor::GetPerceptiveness, &Actor::SetPerceptiveness)
.property("PainThreshold", &Actor::GetPainThreshold, &Actor::SetPainThreshold)
.property("CanRevealUnseen", &Actor::GetCanRevealUnseen, &Actor::SetCanRevealUnseen)
.property("InventorySize", &Actor::GetInventorySize)
.property("MaxInventoryMass", &Actor::GetMaxInventoryMass)
.property("MovePathSize", &Actor::GetMovePathSize)
.property("MovePathEnd", &Actor::GetMovePathEnd)
.property("IsWaitingOnNewMovePath", &Actor::IsWaitingOnNewMovePath)
.property("AimDistance", &Actor::GetAimDistance, &Actor::SetAimDistance)
.property("SightDistance", &Actor::GetSightDistance, &Actor::SetSightDistance)
.property("PieMenu", &Actor::GetPieMenu, &LuaAdaptersPropertyOwnershipSafetyFaker::ActorSetPieMenu)
.property("AIBaseDigStrength", &Actor::GetAIBaseDigStrength, &Actor::SetAIBaseDigStrength)
.property("DigStrength", &Actor::EstimateDigStrength)
.property("JumpHeight", &Actor::EstimateJumpHeight)
.property("SceneWaypoints", &LuaAdaptersActor::GetSceneWaypoints, luabind::adopt(luabind::return_value) + luabind::return_stl_iterator)
.property("LimbPushForcesAndCollisionsDisabled", &Actor::GetLimbPushForcesAndCollisionsDisabled, &Actor::SetLimbPushForcesAndCollisionsDisabled)
.property("MoveProximityLimit", &Actor::GetMoveProximityLimit, &Actor::SetMoveProximityLimit)
.def_readwrite("MOMoveTarget", &Actor::m_pMOMoveTarget)
.def_readonly("MovePath", &Actor::m_MovePath, luabind::return_stl_iterator)
.def_readonly("Inventory", &Actor::m_Inventory, luabind::return_stl_iterator)
.def("GetController", &Actor::GetController)
.def("IsPlayerControlled", &Actor::IsPlayerControlled)
.def("IsControllable", &Actor::IsControllable)
.def("SetControllerMode", &Actor::SetControllerMode)
.def("SwapControllerModes", &Actor::SwapControllerModes)
.def("GetStableVelocityThreshold", &Actor::GetStableVel)
.def("SetStableVelocityThreshold", (void(Actor::*)(float, float)) & Actor::SetStableVel)
.def("SetStableVelocityThreshold", (void(Actor::*)(Vector)) & Actor::SetStableVel)
.def("GetAimAngle", &Actor::GetAimAngle)
.def("SetAimAngle", &Actor::SetAimAngle)
.def("HasObject", &Actor::HasObject)
.def("HasObjectInGroup", &Actor::HasObjectInGroup)
.def("IsWithinRange", &Actor::IsWithinRange)
.def("AddGold", &Actor::AddGold)
.def("AddHealth", &Actor::AddHealth)
.def("IsStatus", &Actor::IsStatus)
.def("IsDead", &Actor::IsDead)
.def("AddAISceneWaypoint", &Actor::AddAISceneWaypoint)
.def("AddAIMOWaypoint", &Actor::AddAIMOWaypoint)
.def("ClearAIWaypoints", &Actor::ClearAIWaypoints)
.def("GetLastAIWaypoint", &Actor::GetLastAIWaypoint)
.def("GetAIMOWaypointID", &Actor::GetAIMOWaypointID)
.def("GetWaypointListSize", &Actor::GetWaypointsSize)
.def("ClearMovePath", &Actor::ClearMovePath)
.def("AddToMovePathBeginning", &Actor::AddToMovePathBeginning)
.def("AddToMovePathEnd", &Actor::AddToMovePathEnd)
.def("RemoveMovePathBeginning", &Actor::RemoveMovePathBeginning)
.def("RemoveMovePathEnd", &Actor::RemoveMovePathEnd)
.def("AddInventoryItem", &Actor::AddInventoryItem, luabind::adopt(_2))
.def("RemoveInventoryItem", (void(Actor::*)(const std::string&)) & Actor::RemoveInventoryItem)
.def("RemoveInventoryItem", (void(Actor::*)(const std::string&, const std::string&)) & Actor::RemoveInventoryItem)
.def("RemoveInventoryItemAtIndex", &Actor::RemoveInventoryItemAtIndex, luabind::adopt(luabind::return_value))
.def("SwapNextInventory", &Actor::SwapNextInventory)
.def("SwapPrevInventory", &Actor::SwapPrevInventory)
.def("DropAllInventory", &Actor::DropAllInventory)
.def("DropAllGold", &Actor::DropAllGold)
.def("IsInventoryEmpty", &Actor::IsInventoryEmpty)
.def("ActivateHotkeyAction", &Actor::ActivateHotkeyAction)
.def("DeactivateHotkeyAction", &Actor::DeactivateHotkeyAction)
.def("HotkeyActionIsActivated", &Actor::HotkeyActionIsActivated)
.def("DrawWaypoints", &Actor::DrawWaypoints)
.def("SetMovePathToUpdate", &Actor::SetMovePathToUpdate)
.def("UpdateMovePath", &Actor::UpdateMovePath)
.def("SetAlarmPoint", &Actor::AlarmPoint)
.def("GetAlarmPoint", &Actor::GetAlarmPoint)
.def("IsOrganic", &Actor::IsOrganic)
.def("IsMechanical", &Actor::IsMechanical)
.enum_("Status")[luabind::value("STABLE", Actor::Status::STABLE),
luabind::value("UNSTABLE", Actor::Status::UNSTABLE),
luabind::value("INACTIVE", Actor::Status::INACTIVE),
luabind::value("DYING", Actor::Status::DYING),
luabind::value("DEAD", Actor::Status::DEAD)]
.enum_("MovementState")[luabind::value("NOMOVE", Actor::MovementState::NOMOVE),
luabind::value("CROUCH", Actor::MovementState::CROUCH),
luabind::value("STAND", Actor::MovementState::STAND),
luabind::value("WALK", Actor::MovementState::WALK),
luabind::value("RUN", Actor::MovementState::RUN),
luabind::value("JUMP", Actor::MovementState::JUMP),
luabind::value("DISLODGE", Actor::MovementState::DISLODGE),
luabind::value("PRONE", Actor::MovementState::PRONE),
luabind::value("CRAWL", Actor::MovementState::CRAWL),
luabind::value("ARMCRAWL", Actor::MovementState::ARMCRAWL),
luabind::value("CLIMB", Actor::MovementState::CLIMB),
luabind::value("MOVEMENTSTATECOUNT", Actor::MovementState::MOVEMENTSTATECOUNT)]
.enum_("AIMode")[luabind::value("AIMODE_NONE", Actor::AIMode::AIMODE_NONE),
luabind::value("AIMODE_SENTRY", Actor::AIMode::AIMODE_SENTRY),
luabind::value("AIMODE_PATROL", Actor::AIMode::AIMODE_PATROL),
luabind::value("AIMODE_GOTO", Actor::AIMode::AIMODE_GOTO),
luabind::value("AIMODE_BRAINHUNT", Actor::AIMode::AIMODE_BRAINHUNT),
luabind::value("AIMODE_GOLDDIG", Actor::AIMode::AIMODE_GOLDDIG),
luabind::value("AIMODE_RETURN", Actor::AIMode::AIMODE_RETURN),
luabind::value("AIMODE_STAY", Actor::AIMode::AIMODE_STAY),
luabind::value("AIMODE_SCUTTLE", Actor::AIMode::AIMODE_SCUTTLE),
luabind::value("AIMODE_DELIVER", Actor::AIMode::AIMODE_DELIVER),
luabind::value("AIMODE_BOMB", Actor::AIMode::AIMODE_BOMB),
luabind::value("AIMODE_SQUAD", Actor::AIMode::AIMODE_SQUAD),
luabind::value("AIMODE_COUNT", Actor::AIMode::AIMODE_COUNT)]
.enum_("ActionState")[luabind::value("MOVING", Actor::ActionState::MOVING),
luabind::value("MOVING_FAST", Actor::ActionState::MOVING_FAST),
luabind::value("FIRING", Actor::ActionState::FIRING),
luabind::value("ActionStateCount", Actor::ActionState::ActionStateCount)]
.enum_("AimState")[luabind::value("AIMSTILL", Actor::AimState::AIMSTILL),
luabind::value("AIMUP", Actor::AimState::AIMUP),
luabind::value("AIMDOWN", Actor::AimState::AIMDOWN),
luabind::value("AimStateCount", Actor::AimState::AimStateCount)]
.enum_("LateralMoveState")[luabind::value("LAT_STILL", Actor::LateralMoveState::LAT_STILL),
luabind::value("LAT_LEFT", Actor::LateralMoveState::LAT_LEFT),
luabind::value("LAT_RIGHT", Actor::LateralMoveState::LAT_RIGHT)]
.enum_("ObstacleState")[luabind::value("PROCEEDING", Actor::ObstacleState::PROCEEDING),
luabind::value("BACKSTEPPING", Actor::ObstacleState::BACKSTEPPING),
luabind::value("DIGPAUSING", Actor::ObstacleState::DIGPAUSING),
luabind::value("JUMPING", Actor::ObstacleState::JUMPING),
luabind::value("SOFTLANDING", Actor::ObstacleState::SOFTLANDING)]
.enum_("TeamBlockState")[luabind::value("NOTBLOCKED", Actor::TeamBlockState::NOTBLOCKED),
luabind::value("BLOCKED", Actor::TeamBlockState::BLOCKED),
luabind::value("IGNORINGBLOCK", Actor::TeamBlockState::IGNORINGBLOCK),
luabind::value("FOLLOWWAIT", Actor::TeamBlockState::FOLLOWWAIT)]
.enum_("ActorHotkeyType")[luabind::value("PRIMARYHOTKEY", Actor::ActorHotkeyType::PRIMARYHOTKEY),
luabind::value("AUXILIARYHOTKEY", Actor::ActorHotkeyType::AUXILIARYHOTKEY),
luabind::value("ACTORHOTKEYTYPECOUNT", Actor::ActorHotkeyType::ACTORHOTKEYTYPECOUNT)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, ADoor) {
return ConcreteTypeLuaClassDefinition(ADoor, Actor)
.property("Door", &ADoor::GetDoor, &LuaAdaptersPropertyOwnershipSafetyFaker::ADoorSetDoor)
.property("DoorMoveStartSound", &ADoor::GetDoorMoveStartSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ADoorSetDoorMoveStartSound)
.property("DoorMoveSound", &ADoor::GetDoorMoveSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ADoorSetDoorMoveSound)
.property("DoorDirectionChangeSound", &ADoor::GetDoorDirectionChangeSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ADoorSetDoorDirectionChangeSound)
.property("DoorMoveEndSound", &ADoor::GetDoorMoveEndSound, &LuaAdaptersPropertyOwnershipSafetyFaker::ADoorSetDoorMoveEndSound)
.def("GetDoorState", &ADoor::GetDoorState)
.def("OpenDoor", &ADoor::OpenDoor)
.def("CloseDoor", &ADoor::CloseDoor)
.def("StopDoor", &ADoor::StopDoor)
.def("ResetSensorTimer", &ADoor::ResetSensorTimer)
.def("SetClosedByDefault", &ADoor::SetClosedByDefault)
.enum_("DoorState")[luabind::value("CLOSED", ADoor::DoorState::CLOSED),
luabind::value("OPENING", ADoor::DoorState::OPENING),
luabind::value("OPEN", ADoor::DoorState::OPEN),
luabind::value("CLOSING", ADoor::DoorState::CLOSING),
luabind::value("STOPPED", ADoor::DoorState::STOPPED)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, AEmitter) {
return ConcreteTypeLuaClassDefinition(AEmitter, Attachable)
.property("EmissionSound", &AEmitter::GetEmissionSound, &LuaAdaptersPropertyOwnershipSafetyFaker::AEmitterSetEmissionSound)
.property("BurstSound", &AEmitter::GetBurstSound, &LuaAdaptersPropertyOwnershipSafetyFaker::AEmitterSetBurstSound)
.property("EndSound", &AEmitter::GetEndSound, &LuaAdaptersPropertyOwnershipSafetyFaker::AEmitterSetEndSound)
.property("BurstScale", &AEmitter::GetBurstScale, &AEmitter::SetBurstScale)
.property("PlayBurstSound", &AEmitter::GetPlayBurstSound, &AEmitter::SetPlayBurstSound)
.property("EmitAngle", &AEmitter::GetEmitAngle, &AEmitter::SetEmitAngle)
.property("GetThrottle", &AEmitter::GetThrottle, &AEmitter::SetThrottle)
.property("Throttle", &AEmitter::GetThrottle, &AEmitter::SetThrottle)
.property("ThrottleFactor", &AEmitter::GetThrottleFactor)
.property("NegativeThrottleMultiplier", &AEmitter::GetNegativeThrottleMultiplier, &AEmitter::SetNegativeThrottleMultiplier)
.property("PositiveThrottleMultiplier", &AEmitter::GetPositiveThrottleMultiplier, &AEmitter::SetPositiveThrottleMultiplier)
.property("BurstSpacing", &AEmitter::GetBurstSpacing, &AEmitter::SetBurstSpacing)
.property("BurstDamage", &AEmitter::GetBurstDamage, &AEmitter::SetBurstDamage)
.property("EmitterDamageMultiplier", &AEmitter::GetEmitterDamageMultiplier, &AEmitter::SetEmitterDamageMultiplier)
.property("EmitCount", &AEmitter::GetEmitCount)
.property("EmitCountLimit", &AEmitter::GetEmitCountLimit, &AEmitter::SetEmitCountLimit)
.property("EmitDamage", &AEmitter::GetEmitDamage, &AEmitter::SetEmitDamage)
.property("EmitOffset", &AEmitter::GetEmitOffset, &AEmitter::SetEmitOffset)
.property("Flash", &AEmitter::GetFlash, &LuaAdaptersPropertyOwnershipSafetyFaker::AEmitterSetFlash)
.property("FlashScale", &AEmitter::GetFlashScale, &AEmitter::SetFlashScale)
.property("TotalParticlesPerMinute", &AEmitter::GetTotalParticlesPerMinute)
.property("TotalBurstSize", &AEmitter::GetTotalBurstSize)
.def_readonly("Emissions", &AEmitter::m_EmissionList, luabind::return_stl_iterator)
.def("IsEmitting", &AEmitter::IsEmitting)
.def("WasEmitting", &AEmitter::WasEmitting)
.def("EnableEmission", &AEmitter::EnableEmission)
.def("GetEmitVector", &AEmitter::GetEmitVector)
.def("GetRecoilVector", &AEmitter::GetRecoilVector)
.def("EstimateImpulse", &AEmitter::EstimateImpulse)
.def("TriggerBurst", &AEmitter::TriggerBurst)
.def("IsSetToBurst", &AEmitter::IsSetToBurst)
.def("CanTriggerBurst", &AEmitter::CanTriggerBurst)
.def("GetScaledThrottle", &AEmitter::GetScaledThrottle)
.def("JustStartedEmitting", &AEmitter::JustStartedEmitting);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, AEJetpack) {
return ConcreteTypeLuaClassDefinition(AEJetpack, AEmitter)
.property("JetpackType", &AEJetpack::GetJetpackType, &AEJetpack::SetJetpackType)
.property("JetTimeTotal", &AEJetpack::GetJetTimeTotal, &AEJetpack::SetJetTimeTotal)
.property("JetTimeLeft", &AEJetpack::GetJetTimeLeft, &AEJetpack::SetJetTimeLeft)
.property("JetReplenishRate", &AEJetpack::GetJetReplenishRate, &AEJetpack::SetJetReplenishRate)
.property("MinimumFuelRatio", &AEJetpack::GetMinimumFuelRatio, &AEJetpack::SetMinimumFuelRatio)
.property("JetAngleRange", &AEJetpack::GetJetAngleRange, &AEJetpack::SetJetAngleRange)
.property("CanAdjustAngleWhileFiring", &AEJetpack::GetCanAdjustAngleWhileFiring, &AEJetpack::SetCanAdjustAngleWhileFiring)
.property("AdjustsThrottleForWeight", &AEJetpack::GetAdjustsThrottleForWeight, &AEJetpack::SetAdjustsThrottleForWeight)
.enum_("JetpackType")[luabind::value("Standard", AEJetpack::Standard),
luabind::value("JumpPack", AEJetpack::JumpPack)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, AHuman) {
return ConcreteTypeLuaClassDefinition(AHuman, Actor)
.def(luabind::constructor<>())
.property("Head", &AHuman::GetHead, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetHead)
.property("Jetpack", &AHuman::GetJetpack, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetJetpack)
.property("FGArm", &AHuman::GetFGArm, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetFGArm)
.property("BGArm", &AHuman::GetBGArm, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetBGArm)
.property("FGLeg", &AHuman::GetFGLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetFGLeg)
.property("BGLeg", &AHuman::GetBGLeg, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetBGLeg)
.property("FGFoot", &AHuman::GetFGFoot, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetFGFoot)
.property("BGFoot", &AHuman::GetBGFoot, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetBGFoot)
.property("MaxWalkPathCrouchShift", &AHuman::GetMaxWalkPathCrouchShift, &AHuman::SetMaxWalkPathCrouchShift)
.property("CrouchAmount", &AHuman::GetCrouchAmount)
.property("CrouchAmountOverride", &AHuman::GetCrouchAmountOverride, &AHuman::SetCrouchAmountOverride)
.property("StrideSound", &AHuman::GetStrideSound, &LuaAdaptersPropertyOwnershipSafetyFaker::AHumanSetStrideSound)
.property("UpperBodyState", &AHuman::GetUpperBodyState, &AHuman::SetUpperBodyState)
.property("ProneState", &AHuman::GetProneState, &AHuman::SetProneState)
.property("ThrowPrepTime", &AHuman::GetThrowPrepTime, &AHuman::SetThrowPrepTime)
.property("ThrowProgress", &AHuman::GetThrowProgress)
.property("EquippedItem", &AHuman::GetEquippedItem)
.property("EquippedBGItem", &AHuman::GetEquippedBGItem)
.property("EquippedMass", &AHuman::GetEquippedMass)
.property("FirearmIsReady", &AHuman::FirearmIsReady)
.property("ThrowableIsReady", &AHuman::ThrowableIsReady)
.property("FirearmIsEmpty", &AHuman::FirearmIsEmpty)
.property("FirearmNeedsReload", &AHuman::FirearmNeedsReload)
.property("FirearmIsSemiAuto", &AHuman::FirearmIsSemiAuto)
.property("FirearmActivationDelay", &AHuman::FirearmActivationDelay)
.property("IsClimbing", &AHuman::IsClimbing)
.property("StrideFrame", &AHuman::StrideFrame)
.property("ArmSwingRate", &AHuman::GetArmSwingRate, &AHuman::SetArmSwingRate)
.property("DeviceArmSwayRate", &AHuman::GetDeviceArmSwayRate, &AHuman::SetDeviceArmSwayRate)
.def("EquipFirearm", &AHuman::EquipFirearm)
.def("EquipThrowable", &AHuman::EquipThrowable)
.def("EquipDiggingTool", &AHuman::EquipDiggingTool)
.def("EquipShield", &AHuman::EquipShield)
.def("EquipShieldInBGArm", (bool(AHuman::*)()) & AHuman::EquipShieldInBGArm)
.def("EquipDeviceInGroup", &AHuman::EquipDeviceInGroup)
.def("EquipNamedDevice", (bool(AHuman::*)(const std::string&, bool)) & AHuman::EquipNamedDevice)
.def("EquipNamedDevice", (bool(AHuman::*)(const std::string&, const std::string&, bool)) & AHuman::EquipNamedDevice)
.def("EquipLoadedFirearmInGroup", &AHuman::EquipLoadedFirearmInGroup)
.def("UnequipFGArm", &AHuman::UnequipFGArm)
.def("UnequipBGArm", &AHuman::UnequipBGArm)
.def("UnequipArms", &AHuman::UnequipArms)
.def("ReloadFirearms", &LuaAdaptersAHuman::ReloadFirearms)
.def("ReloadFirearms", &AHuman::ReloadFirearms)
.def("FirearmsAreReloading", &AHuman::FirearmsAreReloading)
.def("IsWithinRange", &AHuman::IsWithinRange)
.def("Look", &AHuman::Look)
.def("LookForGold", &AHuman::LookForGold)
.def("LookForMOs", &AHuman::LookForMOs)
.def("GetLimbPath", &AHuman::GetLimbPath)
.def("GetLimbPathTravelSpeed", &AHuman::GetLimbPathTravelSpeed)
.def("SetLimbPathTravelSpeed", &AHuman::SetLimbPathTravelSpeed)
.def("GetLimbPathPushForce", &AHuman::GetLimbPathPushForce)
.def("SetLimbPathPushForce", &AHuman::SetLimbPathPushForce)
.def("GetRotAngleTarget", &AHuman::GetRotAngleTarget)
.def("SetRotAngleTarget", &AHuman::SetRotAngleTarget)
.def("GetWalkAngle", &AHuman::GetWalkAngle)
.def("SetWalkAngle", &AHuman::SetWalkAngle)
.enum_("UpperBodyState")[luabind::value("WEAPON_READY", AHuman::UpperBodyState::WEAPON_READY),
luabind::value("AIMING_SHARP", AHuman::UpperBodyState::AIMING_SHARP),
luabind::value("HOLSTERING_BACK", AHuman::UpperBodyState::HOLSTERING_BACK),
luabind::value("HOLSTERING_BELT", AHuman::UpperBodyState::HOLSTERING_BELT),
luabind::value("DEHOLSTERING_BACK", AHuman::UpperBodyState::DEHOLSTERING_BACK),
luabind::value("DEHOLSTERING_BELT", AHuman::UpperBodyState::DEHOLSTERING_BELT),
luabind::value("THROWING_PREP", AHuman::UpperBodyState::THROWING_PREP),
luabind::value("THROWING_RELEASE", AHuman::UpperBodyState::THROWING_RELEASE)]
.enum_("ProneState")[luabind::value("NOTPRONE", AHuman::ProneState::NOTPRONE),
luabind::value("GOPRONE", AHuman::ProneState::GOPRONE),
luabind::value("PRONE", AHuman::ProneState::LAYINGPRONE),
luabind::value("PRONESTATECOUNT", AHuman::ProneState::PRONESTATECOUNT)]
.enum_("Layer")[luabind::value("FGROUND", AHuman::Layer::FGROUND),
luabind::value("BGROUND", AHuman::Layer::BGROUND)]
.enum_("DeviceHandlingState")[luabind::value("STILL", AHuman::DeviceHandlingState::STILL),
luabind::value("POINTING", AHuman::DeviceHandlingState::POINTING),
luabind::value("SCANNING", AHuman::DeviceHandlingState::SCANNING),
luabind::value("AIMING", AHuman::DeviceHandlingState::AIMING),
luabind::value("FIRING", AHuman::DeviceHandlingState::FIRING),
luabind::value("THROWING", AHuman::DeviceHandlingState::THROWING),
luabind::value("DIGGING", AHuman::DeviceHandlingState::DIGGING)]
.enum_("SweepState")[luabind::value("NOSWEEP", AHuman::SweepState::NOSWEEP),
luabind::value("SWEEPINGUP", AHuman::SweepState::SWEEPINGUP),
luabind::value("SWEEPUPPAUSE", AHuman::SweepState::SWEEPUPPAUSE),
luabind::value("SWEEPINGDOWN", AHuman::SweepState::SWEEPINGDOWN),
luabind::value("SWEEPDOWNPAUSE", AHuman::SweepState::SWEEPDOWNPAUSE)]
.enum_("DigState")[luabind::value("NOTDIGGING", AHuman::DigState::NOTDIGGING),
luabind::value("PREDIG", AHuman::DigState::PREDIG),
luabind::value("STARTDIG", AHuman::DigState::STARTDIG),
luabind::value("TUNNELING", AHuman::DigState::TUNNELING),
luabind::value("FINISHINGDIG", AHuman::DigState::FINISHINGDIG),
luabind::value("PAUSEDIGGER", AHuman::DigState::PAUSEDIGGER)]
.enum_("JumpState")[luabind::value("NOTJUMPING", AHuman::JumpState::NOTJUMPING),
luabind::value("FORWARDJUMP", AHuman::JumpState::FORWARDJUMP),
luabind::value("PREJUMP", AHuman::JumpState::PREUPJUMP),
luabind::value("UPJUMP", AHuman::JumpState::UPJUMP),
luabind::value("APEXJUMP", AHuman::JumpState::APEXJUMP),
luabind::value("LANDJUMP", AHuman::JumpState::LANDJUMP)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Arm) {
return ConcreteTypeLuaClassDefinition(Arm, Attachable)
.property("MaxLength", &Arm::GetMaxLength)
.property("MoveSpeed", &Arm::GetMoveSpeed, &Arm::SetMoveSpeed)
.property("HandIdleOffset", &Arm::GetHandIdleOffset, &Arm::SetHandIdleOffset)
.property("HandPos", &Arm::GetHandPos, &Arm::SetHandPos)
.property("HasAnyHandTargets", &Arm::HasAnyHandTargets)
.property("NumberOfHandTargets", &Arm::GetNumberOfHandTargets)
.property("NextHandTargetDescription", &Arm::GetNextHandTargetDescription)
.property("NextHandTargetPosition", &Arm::GetNextHandTargetPosition)
.property("HandHasReachedCurrentTarget", &Arm::GetHandHasReachedCurrentTarget)
.property("GripStrength", &Arm::GetGripStrength, &Arm::SetGripStrength)
.property("ThrowStrength", &Arm::GetThrowStrength, &Arm::SetThrowStrength)
.property("HeldDevice", &Arm::GetHeldDevice, &LuaAdaptersPropertyOwnershipSafetyFaker::ArmSetHeldDevice)
.property("SupportedHeldDevice", &Arm::GetHeldDeviceThisArmIsTryingToSupport)
.def("AddHandTarget", (void(Arm::*)(const std::string& description, const Vector& handTargetPositionToAdd)) & Arm::AddHandTarget)
.def("AddHandTarget", (void(Arm::*)(const std::string& description, const Vector& handTargetPositionToAdd, float delayAtTarget)) & Arm::AddHandTarget)
.def("RemoveNextHandTarget", &Arm::RemoveNextHandTarget)
.def("ClearHandTargets", &Arm::ClearHandTargets);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Attachable) {
return ConcreteTypeLuaClassDefinition(Attachable, MOSRotating)
.property("ParentOffset", &Attachable::GetParentOffset, &Attachable::SetParentOffset)
.property("JointStrength", &Attachable::GetJointStrength, &Attachable::SetJointStrength)
.property("JointStiffness", &Attachable::GetJointStiffness, &Attachable::SetJointStiffness)
.property("JointOffset", &Attachable::GetJointOffset, &Attachable::SetJointOffset)
.property("JointPos", &Attachable::GetJointPos)
.property("DeleteWhenRemovedFromParent", &Attachable::GetDeleteWhenRemovedFromParent, &Attachable::SetDeleteWhenRemovedFromParent)
.property("GibWhenRemovedFromParent", &Attachable::GetGibWhenRemovedFromParent, &Attachable::SetGibWhenRemovedFromParent)
.property("ApplyTransferredForcesAtOffset", &Attachable::GetApplyTransferredForcesAtOffset, &Attachable::SetApplyTransferredForcesAtOffset)
.property("BreakWound", &Attachable::GetBreakWound, &LuaAdaptersPropertyOwnershipSafetyFaker::AttachableSetBreakWound)
.property("ParentBreakWound", &Attachable::GetParentBreakWound, &LuaAdaptersPropertyOwnershipSafetyFaker::AttachableSetParentBreakWound)
.property("InheritsHFlipped", &Attachable::InheritsHFlipped, &Attachable::SetInheritsHFlipped)
.property("InheritsRotAngle", &Attachable::InheritsRotAngle, &Attachable::SetInheritsRotAngle)
.property("InheritedRotAngleOffset", &Attachable::GetInheritedRotAngleOffset, &Attachable::SetInheritedRotAngleOffset)
.property("AtomSubgroupID", &Attachable::GetAtomSubgroupID)
.property("CollidesWithTerrainWhileAttached", &Attachable::GetCollidesWithTerrainWhileAttached, &Attachable::SetCollidesWithTerrainWhileAttached)
.property("IgnoresParticlesWhileAttached", &Attachable::GetIgnoresParticlesWhileAttached, &Attachable::SetIgnoresParticlesWhileAttached)
.property("CanCollideWithTerrain", &Attachable::CanCollideWithTerrain)
.property("DrawnAfterParent", &Attachable::IsDrawnAfterParent, &Attachable::SetDrawnAfterParent)
.property("InheritsFrame", &Attachable::InheritsFrame, &Attachable::SetInheritsFrame)
.property("InheritsVelWhenDetached", &Attachable::InheritsVelocityWhenDetached, &Attachable::SetInheritsVelocityWhenDetached)
.property("InheritsAngularVelWhenDetached", &Attachable::InheritsAngularVelocityWhenDetached, &Attachable::SetInheritsAngularVelocityWhenDetached)
.property("AffectsRadius", &Attachable::AffectsRadius, &Attachable::SetAffectsRadius)
.def("IsAttached", &Attachable::IsAttached)
.def("IsAttachedTo", &Attachable::IsAttachedTo)
.def("RemoveFromParent", &LuaAdaptersAttachable::RemoveFromParent1, luabind::adopt(luabind::return_value))
.def("RemoveFromParent", &LuaAdaptersAttachable::RemoveFromParent2, luabind::adopt(luabind::return_value));
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Deployment) {
return AbstractTypeLuaClassDefinition(Deployment, SceneObject)
.property("ID", &Deployment::GetID)
.property("HFlipped", &Deployment::IsHFlipped)
.property("SpawnRadius", &Deployment::GetSpawnRadius)
.def("GetLoadoutName", &Deployment::GetLoadoutName)
.def("CreateDeployedActor", (Actor * (Deployment::*)()) & Deployment::CreateDeployedActor, luabind::adopt(luabind::result))
.def("CreateDeployedObject", (SceneObject * (Deployment::*)()) & Deployment::CreateDeployedObject, luabind::adopt(luabind::result));
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Emission) {
return AbstractTypeLuaClassDefinition(Emission, Entity)
.property("ParticlesPerMinute", &Emission::GetRate, &Emission::SetRate)
.property("MinVelocity", &Emission::GetMinVelocity, &Emission::SetMinVelocity)
.property("MaxVelocity", &Emission::GetMaxVelocity, &Emission::SetMaxVelocity)
.property("PushesEmitter", &Emission::PushesEmitter, &Emission::SetPushesEmitter)
.property("LifeVariation", &Emission::GetLifeVariation, &Emission::SetLifeVariation)
.property("BurstSize", &Emission::GetBurstSize, &Emission::SetBurstSize)
.property("Spread", &Emission::GetSpread, &Emission::SetSpread)
.property("Offset", &Emission::GetOffset, &Emission::SetOffset)
.property("ParticleCount", &Emission::GetParticleCount, &Emission::SetParticleCount)
.property("InheritsVel", &Emission::InheritsVelocity, &Emission::SetInheritsVelocity)
.property("InheritsAngularVel", &Emission::InheritsAngularVelocity, &Emission::SetInheritsAngularVelocity)
.def("ResetEmissionTimers", &Emission::ResetEmissionTimers);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Gib) {
return luabind::class_<Gib>("Gib")
.property("ParticlePreset", &Gib::GetParticlePreset, &Gib::SetParticlePreset)
.property("MinVelocity", &Gib::GetMinVelocity, &Gib::SetMinVelocity)
.property("MaxVelocity", &Gib::GetMaxVelocity, &Gib::SetMaxVelocity)
.property("SpreadMode", &Gib::GetSpreadMode, &Gib::SetSpreadMode)
.def_readwrite("Offset", &Gib::m_Offset)
.def_readwrite("Count", &Gib::m_Count)
.def_readwrite("Spread", &Gib::m_Spread)
.def_readwrite("LifeVariation", &Gib::m_LifeVariation)
.def_readwrite("InheritsVel", &Gib::m_InheritsVel)
.def_readwrite("InheritsAngularVel", &Gib::m_InheritsAngularVel)
.def_readwrite("IgnoresTeamHits", &Gib::m_IgnoresTeamHits)
.enum_("SpreadMode")[luabind::value("SpreadRandom", Gib::SpreadMode::SpreadRandom),
luabind::value("SpreadEven", Gib::SpreadMode::SpreadEven),
luabind::value("SpreadSpiral", Gib::SpreadMode::SpreadSpiral)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, GlobalScript) {
return AbstractTypeLuaClassDefinition(GlobalScript, Entity)
.def("Deactivate", &LuaAdaptersGlobalScript::Deactivate);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, HDFirearm) {
return ConcreteTypeLuaClassDefinition(HDFirearm, HeldDevice)
.property("ReloadEndOffset", &HDFirearm::GetReloadEndOffset, &HDFirearm::SetReloadEndOffset)
.property("EjectionPos", &HDFirearm::GetEjectionPos)
.property("EjectionOffset", &HDFirearm::GetEjectionOffset, &HDFirearm::SetEjectionOffset)
.property("RateOfFire", &HDFirearm::GetRateOfFire, &HDFirearm::SetRateOfFire)
.property("MSPerRound", &HDFirearm::GetMSPerRound)
.property("FullAuto", &HDFirearm::IsFullAuto, &HDFirearm::SetFullAuto)
.property("Reloadable", &HDFirearm::IsReloadable, &HDFirearm::SetReloadable)
.property("DualReloadable", &HDFirearm::IsDualReloadable, &HDFirearm::SetDualReloadable)
.property("OneHandedReloadTimeMultiplier", &HDFirearm::GetOneHandedReloadTimeMultiplier, &HDFirearm::SetOneHandedReloadTimeMultiplier)
.property("ReloadAngle", &HDFirearm::GetReloadAngle, &HDFirearm::SetReloadAngle)
.property("OneHandedReloadAngle", &HDFirearm::GetOneHandedReloadAngle, &HDFirearm::SetOneHandedReloadAngle)
.property("CurrentReloadAngle", &HDFirearm::GetCurrentReloadAngle)
.property("RoundInMagCount", &HDFirearm::GetRoundInMagCount)
.property("RoundInMagCapacity", &HDFirearm::GetRoundInMagCapacity)
.property("Magazine", &HDFirearm::GetMagazine, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetMagazine)
.property("Flash", &HDFirearm::GetFlash, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetFlash)
.property("PreFireSound", &HDFirearm::GetPreFireSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetPreFireSound)
.property("FireSound", &HDFirearm::GetFireSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetFireSound)
.property("FireEchoSound", &HDFirearm::GetFireEchoSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetFireEchoSound)
.property("ActiveSound", &HDFirearm::GetActiveSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetActiveSound)
.property("DeactivationSound", &HDFirearm::GetDeactivationSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetDeactivationSound)
.property("EmptySound", &HDFirearm::GetEmptySound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetEmptySound)
.property("ReloadStartSound", &HDFirearm::GetReloadStartSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetReloadStartSound)
.property("ReloadEndSound", &HDFirearm::GetReloadEndSound, &LuaAdaptersPropertyOwnershipSafetyFaker::HDFirearmSetReloadEndSound)
.property("ActivationDelay", &HDFirearm::GetActivationDelay, &HDFirearm::SetActivationDelay)
.property("DeactivationDelay", &HDFirearm::GetDeactivationDelay, &HDFirearm::SetDeactivationDelay)
.property("BaseReloadTime", &HDFirearm::GetBaseReloadTime, &HDFirearm::SetBaseReloadTime)
.property("ReloadTime", &HDFirearm::GetReloadTime)
.property("ReloadProgress", &HDFirearm::GetReloadProgress, &HDFirearm::SetReloadProgress)
.property("ShakeRange", &HDFirearm::GetShakeRange, &HDFirearm::SetShakeRange)
.property("SharpShakeRange", &HDFirearm::GetSharpShakeRange, &HDFirearm::SetSharpShakeRange)
.property("NoSupportFactor", &HDFirearm::GetNoSupportFactor, &HDFirearm::SetNoSupportFactor)
.property("ParticleSpreadRange", &HDFirearm::GetParticleSpreadRange, &HDFirearm::SetParticleSpreadRange)
.property("ShellVelVariation", &HDFirearm::GetShellVelVariation, &HDFirearm::SetShellVelVariation)
.property("FiredOnce", &HDFirearm::FiredOnce)
.property("FiredFrame", &HDFirearm::FiredFrame)
.property("CanFire", &HDFirearm::CanFire)
.property("RoundsFired", &HDFirearm::RoundsFired)
.property("IsAnimatedManually", &HDFirearm::IsAnimatedManually, &HDFirearm::SetAnimatedManually)
.property("RecoilTransmission", &HDFirearm::GetJointStiffness, &HDFirearm::SetJointStiffness)
.def("GetReloadTimer", &HDFirearm::GetReloadTimer)
.def("GetAIFireVel", &HDFirearm::GetAIFireVel)
.def("GetAIBulletLifeTime", &HDFirearm::GetAIBulletLifeTime)
.def("GetBulletAccScalar", &HDFirearm::GetBulletAccScalar)
.def("GetAIBlastRadius", &HDFirearm::GetAIBlastRadius)
.def("GetAIPenetration", &HDFirearm::GetAIPenetration)
.def("CompareTrajectories", &HDFirearm::CompareTrajectories)
.def("GetNextMagazineName", &HDFirearm::GetNextMagazineName)
.def("SetNextMagazineName", &HDFirearm::SetNextMagazineName);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, HeldDevice) {
return ConcreteTypeLuaClassDefinition(HeldDevice, Attachable)
.property("SupportPos", &HeldDevice::GetSupportPos)
.property("MagazinePos", &HeldDevice::GetMagazinePos)
.property("MuzzlePos", &HeldDevice::GetMuzzlePos)
.property("MuzzleOffset", &HeldDevice::GetMuzzleOffset, &HeldDevice::SetMuzzleOffset)
.property("StanceOffset", &HeldDevice::GetStanceOffset, &HeldDevice::SetStanceOffset)
.property("SharpStanceOffset", &HeldDevice::GetSharpStanceOffset, &HeldDevice::SetSharpStanceOffset)
.property("SharpLength", &HeldDevice::GetSharpLength, &HeldDevice::SetSharpLength)
.property("SharpLength", &HeldDevice::GetSharpLength, &HeldDevice::SetSharpLength)
.property("Supportable", &HeldDevice::IsSupportable, &HeldDevice::SetSupportable)
.property("SupportOffset", &HeldDevice::GetSupportOffset, &HeldDevice::SetSupportOffset)
.property("UseSupportOffsetWhileReloading", &HeldDevice::GetUseSupportOffsetWhileReloading, &HeldDevice::SetUseSupportOffsetWhileReloading)
.property("HasPickupLimitations", &HeldDevice::HasPickupLimitations)
.property("UnPickupable", &HeldDevice::IsUnPickupable, &HeldDevice::SetUnPickupable)
.property("GripStrengthMultiplier", &HeldDevice::GetGripStrengthMultiplier, &HeldDevice::SetGripStrengthMultiplier)
.property("Supported", &HeldDevice::GetSupported, &HeldDevice::SetSupported)
.property("GetsHitByMOsWhenHeld", &HeldDevice::GetsHitByMOsWhenHeld, &HeldDevice::SetGetsHitByMOsWhenHeld)
.property("VisualRecoilMultiplier", &HeldDevice::GetVisualRecoilMultiplier, &HeldDevice::SetVisualRecoilMultiplier)
.def("IsBeingHeld", &HeldDevice::IsBeingHeld)
.def("IsWeapon", &HeldDevice::IsWeapon)
.def("IsTool", &HeldDevice::IsTool)
.def("IsShield", &HeldDevice::IsShield)
.def("IsDualWieldable", &HeldDevice::IsDualWieldable)
.def("SetDualWieldable", &HeldDevice::SetDualWieldable)
.def("IsOneHanded", &HeldDevice::IsOneHanded)
.def("SetOneHanded", &HeldDevice::SetOneHanded)
.def("Activate", &HeldDevice::Activate)
.def("Deactivate", &HeldDevice::Deactivate)
.def("IsActivated", &HeldDevice::IsActivated)
.def("ActivateHotkeyAction", &HeldDevice::ActivateHotkeyAction)
.def("DeactivateHotkeyAction", &HeldDevice::DeactivateHotkeyAction)
.def("HotkeyActionIsActivated", &HeldDevice::HotkeyActionIsActivated)
.def("Reload", &HeldDevice::Reload)
.def("IsReloading", &HeldDevice::IsReloading)
.def("DoneReloading", &HeldDevice::DoneReloading)
.def("NeedsReloading", &HeldDevice::NeedsReloading)
.def("IsFull", &HeldDevice::IsFull)
.def("IsEmpty", &HeldDevice::IsEmpty)
.def("IsPickupableBy", &HeldDevice::IsPickupableBy)
.def("AddPickupableByPresetName", &HeldDevice::AddPickupableByPresetName)
.def("RemovePickupableByPresetName", &HeldDevice::RemovePickupableByPresetName)
.enum_("HeldDeviceHotkeyType")[luabind::value("PRIMARYHOTKEY", HeldDeviceHotkeyType::PRIMARYHOTKEY),
luabind::value("AUXILIARYHOTKEY", HeldDeviceHotkeyType::AUXILIARYHOTKEY),
luabind::value("HELDDEVICEHOTKEYTYPECOUNT", HeldDeviceHotkeyType::HELDDEVICEHOTKEYTYPECOUNT)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Leg) {
return ConcreteTypeLuaClassDefinition(Leg, Attachable)
.property("Foot", &Leg::GetFoot, &LuaAdaptersPropertyOwnershipSafetyFaker::LegSetFoot)
.property("MoveSpeed", &Leg::GetMoveSpeed, &Leg::SetMoveSpeed);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, LimbPath) {
return luabind::class_<LimbPath>("LimbPath")
.property("StartOffset", &LimbPath::GetStartOffset, &LimbPath::SetStartOffset)
.property("SegmentCount", &LimbPath::GetSegCount)
.property("BaseTravelSpeedMultiplier", &LimbPath::GetBaseTravelSpeedMultiplier, &LimbPath::SetBaseTravelSpeedMultiplier)
.property("TravelSpeed", &LimbPath::GetTravelSpeed, &LimbPath::SetTravelSpeed)
.property("PushForce", &LimbPath::GetPushForce, &LimbPath::SetPushForce)
.def("GetSegment", &LimbPath::GetSegment);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Magazine) {
return ConcreteTypeLuaClassDefinition(Magazine, Attachable)
.property("NextRound", &Magazine::GetNextRound)
.property("RoundCount", &Magazine::GetRoundCount, &Magazine::SetRoundCount)
.property("IsEmpty", &Magazine::IsEmpty)
.property("IsFull", &Magazine::IsFull)
.property("IsOverHalfFull", &Magazine::IsOverHalfFull)
.property("Capacity", &Magazine::GetCapacity)
.property("Discardable", &Magazine::IsDiscardable);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, Material) {
return luabind::class_<Material, Entity>("Material")
.property("ID", &Material::GetIndex)
.property("Restitution", &Material::GetRestitution)
.property("Bounce", &Material::GetRestitution)
.property("Friction", &Material::GetFriction)
.property("Stickiness", &Material::GetStickiness)
.property("Strength", &Material::GetIntegrity)
.property("StructuralIntegrity", &Material::GetIntegrity)
.property("DensityKGPerVolumeL", &Material::GetVolumeDensity)
.property("DensityKGPerPixel", &Material::GetPixelDensity)
.property("SettleMaterial", &Material::GetSettleMaterial)
.property("SpawnMaterial", &Material::GetSpawnMaterial)
.property("TransformsInto", &Material::GetSpawnMaterial)
.property("IsScrap", &Material::IsScrap)
.def("GetColorIndex", &Material::GetColorIndex);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, MetaPlayer) {
return luabind::class_<MetaPlayer>("MetaPlayer")
.def(luabind::constructor<>())
.property("NativeTechModule", &MetaPlayer::GetNativeTechModule)
.property("ForeignCostMultiplier", &MetaPlayer::GetForeignCostMultiplier)
.property("NativeCostMultiplier", &MetaPlayer::GetNativeCostMultiplier)
.property("InGamePlayer", &MetaPlayer::GetInGamePlayer)
.property("BrainPoolCount", &MetaPlayer::GetBrainPoolCount, &MetaPlayer::SetBrainPoolCount)
.def("ChangeBrainPoolCount", &MetaPlayer::ChangeBrainPoolCount);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, MOPixel) {
return ConcreteTypeLuaClassDefinition(MOPixel, MovableObject)
.property("TrailLength", &MOPixel::GetTrailLength, &MOPixel::SetTrailLength)
.property("Staininess", &MOPixel::GetStaininess, &MOPixel::SetStaininess)
.def("GetColorIndex", &MOPixel::GetColorIndex)
.def("SetColorIndex", &MOPixel::SetColorIndex);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, MOSParticle) {
return ConcreteTypeLuaClassDefinition(MOSParticle, MOSprite);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, MOSprite) {
return AbstractTypeLuaClassDefinition(MOSprite, MovableObject)
.property("Diameter", &MOSprite::GetDiameter)
.property("BoundingBox", &MOSprite::GetBoundingBox)
.property("FrameCount", &MOSprite::GetFrameCount)
.property("SpriteOffset", &MOSprite::GetSpriteOffset, &MOSprite::SetSpriteOffset)
.property("HFlipped", &MOSprite::IsHFlipped, &MOSprite::SetHFlipped)
.property("ForcedHFlip", &MOSprite::GetForcedHFlip, &MOSprite::SetForcedHFlip)
.property("FlipFactor", &MOSprite::GetFlipFactor)
.property("RotAngle", &MOSprite::GetRotAngle, &MOSprite::SetRotAngle)
.property("PrevRotAngle", &MOSprite::GetPrevRotAngle)
.property("AngularVel", &MOSprite::GetAngularVel, &MOSprite::SetAngularVel)
.property("Frame", &MOSprite::GetFrame, &MOSprite::SetFrame)
.property("SpriteAnimMode", &MOSprite::GetSpriteAnimMode, &MOSprite::SetSpriteAnimMode)
.property("SpriteAnimDuration", &MOSprite::GetSpriteAnimDuration, &MOSprite::SetSpriteAnimDuration)
.def("SetNextFrame", &MOSprite::SetNextFrame)
.def("IsTooFast", &MOSprite::IsTooFast)
.def("IsOnScenePoint", &MOSprite::IsOnScenePoint)
.def("RotateOffset", &MOSprite::RotateOffset)
.def("UnRotateOffset", &MOSprite::UnRotateOffset)
.def("FacingAngle", &MOSprite::FacingAngle)
.def("GetSpriteWidth", &MOSprite::GetSpriteWidth)
.def("GetSpriteHeight", &MOSprite::GetSpriteHeight)
.def("GetIconWidth", &MOSprite::GetIconWidth)
.def("GetIconHeight", &MOSprite::GetIconHeight)
.def("SetEntryWound", &MOSprite::SetEntryWound)
.def("SetExitWound", &MOSprite::SetExitWound)
.def("GetEntryWoundPresetName", &MOSprite::GetEntryWoundPresetName)
.def("GetExitWoundPresetName", &MOSprite::GetExitWoundPresetName)
.def("GetSpritePixelIndex", &MOSprite::GetSpritePixelIndex)
.def("SetSpritePixelIndex", &MOSprite::SetSpritePixelIndex)
.def("GetAllSpritePixelPositions", &MOSprite::GetAllSpritePixelPositions, luabind::return_stl_iterator)
.def("GetAllVisibleSpritePixelPositions", &MOSprite::GetAllVisibleSpritePixelPositions, luabind::return_stl_iterator)
.def("SetAllSpritePixelIndexes", &MOSprite::SetAllSpritePixelIndexes)
.def("SetAllVisibleSpritePixelIndexes", &MOSprite::SetAllVisibleSpritePixelIndexes)
.enum_("SpriteAnimMode")[luabind::value("NOANIM", SpriteAnimMode::NOANIM),
luabind::value("ALWAYSLOOP", SpriteAnimMode::ALWAYSLOOP),
luabind::value("ALWAYSRANDOM", SpriteAnimMode::ALWAYSRANDOM),
luabind::value("ALWAYSPINGPONG", SpriteAnimMode::ALWAYSPINGPONG),
luabind::value("LOOPWHENACTIVE", SpriteAnimMode::LOOPWHENACTIVE),
luabind::value("LOOPWHENOPENCLOSE", SpriteAnimMode::LOOPWHENOPENCLOSE),
luabind::value("PINGPONGOPENCLOSE", SpriteAnimMode::PINGPONGOPENCLOSE),
luabind::value("OVERLIFETIME", SpriteAnimMode::OVERLIFETIME),
luabind::value("ONCOLLIDE", SpriteAnimMode::ONCOLLIDE)];
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, MOSRotating) {
return ConcreteTypeLuaClassDefinition(MOSRotating, MOSprite)
//.property("Material", &MOSRotating::GetMaterial)
.property("IndividualRadius", &MOSRotating::GetIndividualRadius)
.property("IndividualDiameter", &MOSRotating::GetIndividualDiameter)
.property("IndividualMass", &MOSRotating::GetIndividualMass)
.property("RecoilForce", &MOSRotating::GetRecoilForce)
.property("RecoilOffset", &MOSRotating::GetRecoilOffset)
.property("TravelImpulse", &MOSRotating::GetTravelImpulse, &MOSRotating::SetTravelImpulse)
.property("GibWoundLimit", (int(MOSRotating::*)() const) & MOSRotating::GetGibWoundLimit, &MOSRotating::SetGibWoundLimit)
.property("GibSound", &MOSRotating::GetGibSound, &LuaAdaptersPropertyOwnershipSafetyFaker::MOSRotatingSetGibSound)
.property("GibImpulseLimit", &MOSRotating::GetGibImpulseLimit, &MOSRotating::SetGibImpulseLimit)
.property("WoundCountAffectsImpulseLimitRatio", &MOSRotating::GetWoundCountAffectsImpulseLimitRatio)
.property("GibAtEndOfLifetime", &MOSRotating::GetGibAtEndOfLifetime, &MOSRotating::SetGibAtEndOfLifetime)
.property("DamageMultiplier", &MOSRotating::GetDamageMultiplier, &MOSRotating::SetDamageMultiplier)
.property("WoundCount", (int(MOSRotating::*)() const) & MOSRotating::GetWoundCount)
.property("OrientToVel", &MOSRotating::GetOrientToVel, &MOSRotating::SetOrientToVel)
.def_readonly("Attachables", &MOSRotating::m_Attachables, luabind::return_stl_iterator)
.def_readonly("Wounds", &MOSRotating::m_Wounds, luabind::return_stl_iterator)
.def_readonly("Gibs", &MOSRotating::m_Gibs, luabind::return_stl_iterator)
.def("AddRecoil", &MOSRotating::AddRecoil)
.def("SetRecoil", &MOSRotating::SetRecoil)
.def("IsRecoiled", &MOSRotating::IsRecoiled)
.def("EnableDeepCheck", &MOSRotating::EnableDeepCheck)
.def("ForceDeepCheck", &MOSRotating::ForceDeepCheck)
.def("GibThis", &MOSRotating::GibThis)
.def("MoveOutOfTerrain", &MOSRotating::MoveOutOfTerrain)
.def("FlashWhite", &MOSRotating::FlashWhite)
.def("GetGibWoundLimit", (int(MOSRotating::*)() const) & MOSRotating::GetGibWoundLimit)
.def("GetGibWoundLimit", (int(MOSRotating::*)(bool positiveDamage, bool negativeDamage, bool noDamage) const) & MOSRotating::GetGibWoundLimit)
.def("GetWoundCount", (int(MOSRotating::*)() const) & MOSRotating::GetWoundCount)
.def("GetWoundCount", (int(MOSRotating::*)(bool positiveDamage, bool negativeDamage, bool noDamage) const) & MOSRotating::GetWoundCount)
.def("GetWounds", &LuaAdaptersMOSRotating::GetWounds1, luabind::adopt(luabind::return_value) + luabind::return_stl_iterator)
.def("GetWounds", &LuaAdaptersMOSRotating::GetWounds2, luabind::adopt(luabind::return_value) + luabind::return_stl_iterator)
.def("AddWound", &MOSRotating::AddWound, luabind::adopt(_2))
.def("AddWound", &MOSRotating::AddWoundExt, luabind::adopt(_2))
.def("RemoveWounds", (float(MOSRotating::*)(int numberOfWoundsToRemove)) & MOSRotating::RemoveWounds)
.def("RemoveWounds", (float(MOSRotating::*)(int numberOfWoundsToRemove, bool positiveDamage, bool negativeDamage, bool noDamage)) & MOSRotating::RemoveWounds)
.def("IsOnScenePoint", &MOSRotating::IsOnScenePoint)
.def("EraseFromTerrain", &MOSRotating::EraseFromTerrain)
.def("AddAttachable", (void(MOSRotating::*)(Attachable * attachableToAdd)) & MOSRotating::AddAttachable, luabind::adopt(_2))
.def("AddAttachable", (void(MOSRotating::*)(Attachable * attachableToAdd, const Vector& parentOffset)) & MOSRotating::AddAttachable, luabind::adopt(_2))
.def("RemoveAttachable", (Attachable * (MOSRotating::*)(long uniqueIDOfAttachableToRemove)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("RemoveAttachable", (Attachable * (MOSRotating::*)(long uniqueIDOfAttachableToRemove, bool addToMovableMan, bool addBreakWounds)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("RemoveAttachable", (Attachable * (MOSRotating::*)(Attachable * attachableToRemove)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("RemoveAttachable", (Attachable * (MOSRotating::*)(Attachable * attachableToRemove, bool addToMovableMan, bool addBreakWounds)) & MOSRotating::RemoveAttachable)
.def("AddEmitter", (void(MOSRotating::*)(Attachable * attachableToAdd)) & MOSRotating::AddAttachable, luabind::adopt(_2))
.def("AddEmitter", (void(MOSRotating::*)(Attachable * attachableToAdd, const Vector& parentOffset)) & MOSRotating::AddAttachable, luabind::adopt(_2))
.def("RemoveEmitter", (Attachable * (MOSRotating::*)(long uniqueIDOfAttachableToRemove)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("RemoveEmitter", (Attachable * (MOSRotating::*)(long uniqueIDOfAttachableToRemove, bool addToMovableMan, bool addBreakWounds)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("RemoveEmitter", (Attachable * (MOSRotating::*)(Attachable * attachableToRemove)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("RemoveEmitter", (Attachable * (MOSRotating::*)(Attachable * attachableToRemove, bool addToMovableMan, bool addBreakWounds)) & MOSRotating::RemoveAttachable, luabind::adopt(luabind::return_value))
.def("GibThis", &LuaAdaptersMOSRotating::GibThis);
}
LuaBindingRegisterFunctionDefinitionForType(EntityLuaBindings, MovableObject) {
return AbstractTypeLuaClassDefinition(MovableObject, SceneObject)
.property("Material", &MovableObject::GetMaterial)
.property("Mass", &MovableObject::GetMass, &MovableObject::SetMass)
.property("Pos", &MovableObject::GetPos, &MovableObject::SetPos)
.property("Vel", &MovableObject::GetVel, &MovableObject::SetVel)
.property("PrevPos", &MovableObject::GetPrevPos)
.property("PrevVel", &MovableObject::GetPrevVel)
.property("DistanceTravelled", &MovableObject::GetDistanceTravelled)
.property("AngularVel", &MovableObject::GetAngularVel, &MovableObject::SetAngularVel)
.property("Radius", &MovableObject::GetRadius)
.property("Diameter", &MovableObject::GetDiameter)
.property("Scale", &MovableObject::GetScale, &MovableObject::SetScale)
.property("EffectRotAngle", &MovableObject::GetEffectRotAngle, &MovableObject::SetEffectRotAngle)
.property("EffectAlwaysShows", &MovableObject::GetEffectAlwaysShows, &MovableObject::SetEffectAlwaysShows)
.property("EffectStartStrength", &MovableObject::GetEffectStartStrengthFloat, &MovableObject::SetEffectStartStrengthFloat)
.property("EffectStopStrength", &MovableObject::GetEffectStopStrengthFloat, &MovableObject::SetEffectStopStrengthFloat)
.property("GlobalAccScalar", &MovableObject::GetGlobalAccScalar, &MovableObject::SetGlobalAccScalar)
.property("AirResistance", &MovableObject::GetAirResistance, &MovableObject::SetAirResistance)
.property("AirThreshold", &MovableObject::GetAirThreshold, &MovableObject::SetAirThreshold)
.property("Age", &MovableObject::GetAge, &MovableObject::SetAge)
.property("Lifetime", &MovableObject::GetLifetime, &MovableObject::SetLifetime)
.property("ID", &MovableObject::GetID)
.property("UniqueID", &MovableObject::GetUniqueID)
.property("RootID", &MovableObject::GetRootID)
.property("MOIDFootprint", &MovableObject::GetMOIDFootprint)
.property("Sharpness", &MovableObject::GetSharpness, &MovableObject::SetSharpness)
.property("HasEverBeenAddedToMovableMan", &MovableObject::HasEverBeenAddedToMovableMan)
.property("AboveHUDPos", &MovableObject::GetAboveHUDPos)
.property("HitsMOs", &MovableObject::HitsMOs, &MovableObject::SetToHitMOs)
.property("GetsHitByMOs", &MovableObject::GetsHitByMOs, &MovableObject::SetToGetHitByMOs)
.property("IgnoresTeamHits", &MovableObject::IgnoresTeamHits, &MovableObject::SetIgnoresTeamHits)
.property("IgnoresWhichTeam", &MovableObject::IgnoresWhichTeam)
.property("IgnoreTerrain", &MovableObject::IgnoreTerrain, &MovableObject::SetIgnoreTerrain)
.property("IgnoresActorHits", &MovableObject::GetIgnoresActorHits, &MovableObject::SetIgnoresActorHits)
.property("ToSettle", &MovableObject::ToSettle, &MovableObject::SetToSettle)
.property("ToDelete", &MovableObject::ToDelete, &MovableObject::SetToDelete)
.property("MissionCritical", &MovableObject::IsMissionCritical, &MovableObject::SetMissionCritical)
.property("HUDVisible", &MovableObject::GetHUDVisible, &MovableObject::SetHUDVisible)
.property("PinStrength", &MovableObject::GetPinStrength, &MovableObject::SetPinStrength)
.property("RestThreshold", &MovableObject::GetRestThreshold, &MovableObject::SetRestThreshold)
.property("DamageOnCollision", &MovableObject::DamageOnCollision, &MovableObject::SetDamageOnCollision)
.property("DamageOnPenetration", &MovableObject::DamageOnPenetration, &MovableObject::SetDamageOnPenetration)
.property("WoundDamageMultiplier", &MovableObject::WoundDamageMultiplier, &MovableObject::SetWoundDamageMultiplier)
.property("HitWhatMOID", &MovableObject::HitWhatMOID)
.property("HitWhatTerrMaterial", &MovableObject::HitWhatTerrMaterial)
.property("HitWhatParticleUniqueID", &MovableObject::HitWhatParticleUniqueID)
.property("ApplyWoundDamageOnCollision", &MovableObject::GetApplyWoundDamageOnCollision, &MovableObject::SetApplyWoundDamageOnCollision)
.property("ApplyWoundBurstDamageOnCollision", &MovableObject::GetApplyWoundBurstDamageOnCollision, &MovableObject::SetApplyWoundBurstDamageOnCollision)
.property("SimUpdatesBetweenScriptedUpdates", &MovableObject::GetSimUpdatesBetweenScriptedUpdates, &MovableObject::SetSimUpdatesBetweenScriptedUpdates)
.property("PostEffectEnabled", &MovableObject::GetPostEffectEnabled, &MovableObject::SetPostEffectEnabled)
.def("GetParent", (MOSRotating * (MovableObject::*)()) & MovableObject::GetParent)
.def("GetParent", (const MOSRotating* (MovableObject::*)() const) & MovableObject::GetParent)
.def("GetRootParent", (MovableObject * (MovableObject::*)()) & MovableObject::GetRootParent)
.def("GetRootParent", (const MovableObject* (MovableObject::*)() const) & MovableObject::GetRootParent)
.def("ReloadScripts", &MovableObject::ReloadScripts)
.def("HasScript", &LuaAdaptersMovableObject::HasScript)
.def("AddScript", &LuaAdaptersMovableObject::AddScript)
.def("ScriptEnabled", &MovableObject::ScriptEnabled)
.def("EnableScript", &LuaAdaptersMovableObject::EnableScript)
.def("DisableScript", &LuaAdaptersMovableObject::DisableScript1)
.def("DisableScript", &LuaAdaptersMovableObject::DisableScript2)
.def("EnableOrDisableAllScripts", &MovableObject::EnableOrDisableAllScripts)
.def("GetStringValue", &MovableObject::GetStringValue)
.def("GetEncodedStringValue", &MovableObject::GetEncodedStringValue)
.def("GetNumberValue", &MovableObject::GetNumberValue)
.def("GetObjectValue", &MovableObject::GetObjectValue)
.def("SetStringValue", &MovableObject::SetStringValue)
.def("SetEncodedStringValue", &MovableObject::SetEncodedStringValue)
.def("SetNumberValue", &MovableObject::SetNumberValue)
.def("SetObjectValue", &MovableObject::SetObjectValue)
.def("RemoveStringValue", &MovableObject::RemoveStringValue)
.def("RemoveNumberValue", &MovableObject::RemoveNumberValue)
.def("RemoveObjectValue", &MovableObject::RemoveObjectValue)
.def("StringValueExists", &MovableObject::StringValueExists)
.def("NumberValueExists", &MovableObject::NumberValueExists)
.def("ObjectValueExists", &MovableObject::ObjectValueExists)
.def("GetAltitude", &MovableObject::GetAltitude)
.def("GetWhichMOToNotHit", &MovableObject::GetWhichMOToNotHit)