ManiaPlanet 3 ManiaScript Reference 2015.06.18.1510
A ManiaScript Reference of the ManiaPlanet 3 game (frozen installation). This is OUTDATED, and exists only for entertainment purposes.
Loading...
Searching...
No Matches
doc.h
1class Void {};
2class Integer{};
3class Real{};
4class Boolean{};
5class Text{};
6class Vec2{};
7class Vec3{};
8class Int3{};
9class Ident{};
10
15struct CMlScript : public CNod {
16 enum LinkType {
17 ExternalBrowser,
18 ManialinkBrowser,
19 Goto,
20 ExternalFromId,
21 ManialinkFromId,
22 GotoFromId,
23 };
27 const CMlPage Page;
31 const Boolean PageIsVisible;
35 const Integer Now;
39 const Integer Period;
43 const Integer CurrentTime;
47 const Text CurrentTimeText;
51 const Text CurrentLocalDateText;
59 const CTitle LoadedTitle;
63 const CMlEvent[] PendingEvents;
67 const Real MouseX;
71 const Real MouseY;
75 const Boolean MouseLeftButton;
79 const Boolean MouseRightButton;
83 const Boolean MouseMiddleButton;
87 const Boolean KeyUp;
91 const Boolean KeyDown;
95 const Boolean KeyLeft;
99 const Boolean KeyRight;
103 const Boolean KeyReturn;
107 const Boolean KeySpace;
111 const Boolean KeyDelete;
115 Boolean IsKeyPressed(Integer KeyCode);
119 Boolean EnableMenuNavigationInputs;
123 Void EnableMenuNavigation(Boolean EnableInputs,Boolean WithAutoFocus,CMlControl AutoBackControl,Integer InputPriority);
127 const Boolean IsMenuNavigationForeground;
131 Void OpenLink(Text Url,LinkType LinkType);
135 Void TriggerPageAction(Text ActionString);
139 const CXmlManager Xml;
143 const CHttpManager Http;
147 const CAudioManager Audio;
155 Void PreloadImage(Text ImageUrl);
156};
157
162struct CMlEntry : public CMlControl {
166 Text Value;
170 Void StartEdition();
174 Integer MaxLine;
178 Boolean AutoNewLine;
179};
180
185struct CMlFileEntry : public CMlEntry {
189 const Text FullFileName;
190};
191
196struct CMlLabel : public CMlControl {
200 Text Style;
204 Text Substyle;
208 Text TextFont;
212 Void SetText(Text NewText);
216 Text Value;
220 const Integer ValueLineCount;
224 Integer MaxLine;
228 Boolean AppendEllipsis;
232 Boolean AutoNewLine;
236 Real Opacity;
240 Vec3 TextColor;
244 Integer TextSize;
248 Real ComputeWidth(Text Text);
249};
250
255struct CMlMediaPlayer : public CMlControl {
256};
257
262struct CMlQuad : public CMlControl {
263 enum EKeepRatioMode {
264 Inactive,
265 Clip,
266 Fit,
267 };
271 Void ChangeImageUrl(Text fieldName);
275 Text ImageUrl;
279 Text ImageUrlFocus;
283 Text Style;
287 Text Substyle;
291 Boolean StyleSelected;
295 const Boolean DownloadInProgress;
299 Vec3 Colorize;
303 Vec3 ModulateColor;
307 Vec3 BgColor;
311 Vec3 BgColorFocus;
315 Real Opacity;
319 EKeepRatioMode KeepRatio;
320};
321
326struct CMlGauge : public CMlControl {
330 Text Style;
334 Void SetRatio(Real NewRatio);
338 Void SetClan(Integer NewClan);
350 Integer Clan;
354 Vec3 Color;
358 Boolean DrawBackground;
362 Boolean DrawBlockBackground;
366 Boolean CenteredBar;
367};
368
373struct CMlGraph : public CMlControl {
377 Vec2 CoordsMin;
381 Vec2 CoordsMax;
385 CMlGraphCurve AddCurve();
389 Void RemoveCurve(CMlGraphCurve Curve);
393 CMlGraphCurve[] Curves;
394};
395
400struct CMlMinimap : public CMlControl {
404 Vec3 WorldPosition;
408 Vec2 MapPosition;
412 Real MapYaw;
417};
418
423struct CMlCamera : public CMlControl {
424};
425
430struct CMlBrowser : public CMlScript {
431 enum EBuddyAction {
432 Add,
433 Invite,
434 Remove,
435 };
436 enum EBuddyResult {
437 Ok,
438 Error,
439 NotFinished,
440 };
444 const CMap CurMap;
448 Void ShowCurMapCard();
452 const EBuddyResult BuddyDoResult;
456 const Text BuddyDoErrorMessage;
460 const Boolean IsInBrowser;
464 Void BrowserBack();
468 Void BrowserQuit();
472 Void BrowserHome();
476 Void BrowserReload();
480 Text BrowserFocusedFrameId;
484 Void SetLocalUserClubLink(Text ClubLink);
485};
486
491struct CManiaApp : public CNod {
492 enum ELinkType {
493 ExternalBrowser,
494 ManialinkBrowser,
495 };
499 const Integer Now;
503 const Boolean IsVisible;
507 const CUser LocalUser;
511 const CTitle LoadedTitle;
515 Boolean EnableMenuNavigationInputs;
519 const Real MouseX;
523 const Real MouseY;
527 const CUILayer[] UILayers;
531 CUILayer UILayerCreate();
535 Void UILayerDestroy(CUILayer Layer);
539 Void UILayerDestroyAll();
543 Void LayerCustomEvent(CUILayer Layer,Text Type,Text[] Data);
547 Void OpenLink(Text Url,ELinkType LinkType);
551 const CXmlManager Xml;
555 const CHttpManager Http;
559 const CAudioManager Audio;
560};
561
565struct CManiaAppEvent : public CNod {
566 enum EType {
567 LayerCustomEvent,
568 KeyPress,
569 ExternalCustomEvent,
570 MenuNavigation,
571 };
572 enum EMenuNavAction {
573 Up,
574 Right,
575 Left,
576 Down,
577 Select,
578 Cancel,
579 PageUp,
580 PageDown,
581 };
585 const EType Type;
589 const CUILayer CustomEventLayer;
593 const Text CustomEventType;
597 const Text[] CustomEventData;
601 const Text ExternalEventType;
605 const Text[] ExternalEventData;
609 const EMenuNavAction MenuNavAction;
613 const Integer KeyCode;
617 const Text KeyName;
618};
619
624struct CManiaAppTitle : public CManiaApp {
628 const CManiaAppEvent[] PendingEvents;
632 Void Menu_Quit();
636 Void Menu_Home();
640 Void Menu_Solo();
644 Void Menu_Competitions();
648 Void Menu_Local();
652 Void Menu_Internet();
656 Void Menu_Editor();
660 Void Menu_Profile();
664 Void PlayMap(Text Map);
668 Boolean LoadingScreenRequireKeyPressed;
672 Boolean DontScaleMainMenuForHMD;
673};
674
678struct CStation : public CNod {
682 const CTitle Title;
686 const Integer AudienceRegisteredUsers;
690 const Integer CampaignMedalsMax;
694 const Integer CampaignMedalsCurrent;
698 const Integer CampaignMedalsRanking;
702 const Real LadderPoints;
706 const Integer LadderRank;
707};
708
713struct CMlStation : public CMlBrowser {
717 const CStation Station;
721 Void EnterStation();
722};
723
728struct CEditorPlugin : public CManiaApp {
729 enum CardinalDirections {
730 North,
731 East,
732 South,
733 West,
734 };
735 enum PlaceMode {
736 Unknown,
737 Terraform,
738 Block,
739 Macroblock,
740 Skin,
741 CopyPaste,
742 Test,
743 Plugin,
744 CustomSelection,
745 OffZone,
746 BlockProperty,
747 Path,
748 GhostBlock,
749 };
750 enum EditMode {
751 Unknown,
752 Place,
753 FreeLook,
754 Erase,
755 Pick,
756 SelectionAdd,
757 SelectionRemove,
758 };
762 const CEditorPluginEvent[] PendingEvents;
766 const CMap Map;
770 const Text MapName;
774 Void ComputeShadows();
778 Void Undo();
782 Void Redo();
786 Void Quit();
790 Void Help();
794 Void Validate();
798 Void AutoSave();
802 Void SaveMap(Text FileName,Text Path);
806 PlaceMode PlaceMode;
810 EditMode EditMode;
814 Boolean UndergroundMode;
818 Boolean BlockStockMode;
822 Int3 CursorCoord;
826 CardinalDirections CursorDir;
830 CBlockModel CursorBlockModel;
834 CBlockModel CursorTerrainBlockModel;
838 CMacroblockModel CursorMacroblockModel;
842 Real CameraVAngle;
846 Real CameraHAngle;
850 Real CameraToTargetDistance;
854 Vec3 TargetedPosition;
858 Boolean EnableAirMapping;
862 Boolean EnableMixMapping;
866 Void RemoveAllBlocks();
870 Void RemoveAllTerrain();
874 Void RemoveAllOffZone();
878 Void RemoveAllObjects();
882 Void RemoveAll();
886 Void RemoveAllBlocksAndTerrain();
890 Void ShowCustomSelection();
894 Void HideCustomSelection();
898 Void CopyPaste_Copy();
902 Void CopyPaste_Cut();
906 Void CopyPaste_Remove();
910 Void CopyPaste_SelectAll();
914 Void CopyPaste_ResetSelection();
918 Void OpenToolsMenu();
922 Void EditMediatrackIngame();
926 Boolean CanPlaceBlock(CBlockModel BlockModel,Int3 Coord,CardinalDirections Dir,Boolean OnGround,Integer VariantIndex);
930 Boolean PlaceBlock(CBlockModel BlockModel,Int3 Coord,CardinalDirections Dir);
934 Boolean CanPlaceBlock_NoDestruction(CBlockModel BlockModel,Int3 Coord,CardinalDirections Dir,Boolean OnGround,Integer VariantIndex);
938 Boolean PlaceBlock_NoDestruction(CBlockModel BlockModel,Int3 Coord,CardinalDirections Dir);
942 Boolean CanPlaceRoadBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
946 Boolean PlaceRoadBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
950 Boolean CanPlaceTerrainBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
954 Boolean PlaceTerrainBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
958 Boolean PlaceTerrainBlocks_NoDestruction(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
962 Boolean CanPlaceMacroblock(CMacroblockModel BlockModel,Int3 Coord,CardinalDirections Dir);
966 Boolean PlaceMacroblock(CMacroblockModel BlockModel,Int3 Coord,CardinalDirections Dir);
970 Boolean CanPlaceMacroblock_NoDestruction(CMacroblockModel BlockModel,Int3 Coord,CardinalDirections Dir);
974 Boolean PlaceMacroblock_NoDestruction(CMacroblockModel BlockModel,Int3 Coord,CardinalDirections Dir);
978 CBlock GetBlock(Int3 Coord);
982 Boolean RemoveBlock(Int3 Coord);
986 Boolean RemoveTerrainBlocks(Int3 StartCoord,Int3 EndCoord);
990 Integer GetBlockGroundHeight(CBlockModel BlockModel,Integer CoordX,Integer CoordZ,CardinalDirections Dir);
994 CBlock GetStartLineBlock();
998 Void CopyPaste_AddOrSubSelection(Int3 StartCoord,Int3 EndCoord);
1002 Boolean CopyPaste_Symmetrize();
1006 Void SaveMacroblock(CMacroblockModel MacroblockModel);
1010 Integer GetInterfaceNumber(CCollector Collector);
1014 Void SetInterfaceNumber(CCollector Collector,Integer NewValue);
1018 CMacroblockModel GetMacroblockModelFromName(Text MacroblockModelName);
1022 CBlockModel GetTerrainBlockModelFromName(Text TerrainBlockModelName);
1026 CBlockModel GetBlockModelFromName(Text BlockModelName);
1030 const CItemAnchor[] Items;
1034 const Text[] MediatrackIngameClips;
1038 const Text[] MediatrackIngameIsScriptClips;
1042 Integer MediatrackIngameEditedClipIndex;
1046 const CBlock[] Blocks;
1050 const CBlockModel[] BlockModels;
1054 const CBlockModel[] TerrainBlockModels;
1058 const CMacroblockModel[] MacroblockModels;
1062 const CAnchorData[] AnchorData;
1066 Int3[] CustomSelectionCoords;
1070 Vec3 CustomSelectionRGB;
1074 Boolean EnableEditorInputsCustomProcessing;
1078 const Boolean EditorInputIsDown_Menu;
1082 const Boolean EditorInputIsDown_SwitchToRace;
1086 const Boolean EditorInputIsDown_CursorUp;
1090 const Boolean EditorInputIsDown_CursorRight;
1094 const Boolean EditorInputIsDown_CursorDown;
1098 const Boolean EditorInputIsDown_CursorLeft;
1102 const Boolean EditorInputIsDown_CursorRaise;
1106 const Boolean EditorInputIsDown_CursorLower;
1110 const Boolean EditorInputIsDown_CursorTurn;
1114 const Boolean EditorInputIsDown_CursorPick;
1118 const Boolean EditorInputIsDown_CursorPlace;
1122 const Boolean EditorInputIsDown_CursorDelete;
1126 const Boolean EditorInputIsDown_CameraUp;
1130 const Boolean EditorInputIsDown_CameraRight;
1134 const Boolean EditorInputIsDown_CameraDown;
1138 const Boolean EditorInputIsDown_CameraLeft;
1142 const Boolean EditorInputIsDown_IconUp;
1146 const Boolean EditorInputIsDown_IconRight;
1150 const Boolean EditorInputIsDown_IconDown;
1154 const Boolean EditorInputIsDown_IconLeft;
1158 const Real CollectionSquareSize;
1162 const Real CollectionSquareHeight;
1166 const Integer CollectionGroundY;
1170 Text ManialinkText;
1174 const CMlPage ManialinkPage;
1175};
1176
1181struct CSmMode : public CMode {
1182 enum EWeapon {
1183 Laser,
1184 Rocket,
1185 Nucleus,
1186 Arrow,
1187 };
1188 enum EActionSlot {
1189 Slot_A,
1190 Slot_B,
1191 Slot_C,
1192 Slot_D,
1193 Slot_E,
1194 Slot_F,
1195 Slot_G,
1196 Slot_H,
1197 };
1198 enum EActionInput {
1199 Weapon,
1200 Movement,
1201 Activable1,
1202 Activable2,
1203 Activable3,
1204 Activable4,
1205 Consumable1,
1206 Consumable2,
1207 None,
1208 };
1209 enum EGameplay {
1210 Default,
1211 Mp3Beta0,
1212 };
1216 Integer StartTime;
1220 Integer EndTime;
1224 Integer SpawnInvulnerabilityDuration;
1228 Boolean UseClans;
1232 Boolean UseForcedClans;
1236 Boolean UsePvPCollisions;
1240 Boolean UsePvPWeapons;
1244 Boolean UseInterractiveScreensIn3d;
1248 Boolean UseLaserVsBullets;
1252 Boolean UseLaserSkewering;
1256 Boolean UsePlayerTagging;
1260 Boolean UseBeaconsWithRecipients;
1264 Boolean UseAmmoBonusOnHit;
1268 Boolean UseSameWallJump;
1272 Boolean UseDefaultActionEvents;
1276 Boolean UseAllies;
1280 Boolean UseAutoSpawnBots;
1284 Boolean ForceNavMapsComputation;
1288 Integer GameplayVersion;
1292 EGameplay Gameplay;
1296 Boolean UseProtectClanmates;
1300 Real OffZoneRadius;
1304 Real OffZoneRadiusSpeed;
1308 Ident OffZoneCenterLandmarkId;
1312 const Integer PlayersNbTotal;
1316 const Integer PlayersNbAlive;
1320 const Integer PlayersNbDead;
1324 const Integer ClansNbTotal;
1328 const Integer ClansNbAlive;
1332 const Integer ClansNbDead;
1336 const Integer[] ClansNbPlayers;
1340 const Integer[] ClansNbPlayersAlive;
1344 const CSmPlayer[] Players;
1348 const CSmPlayer[] BotPlayers;
1352 const CSmPlayer[] Spectators;
1356 const CSmPlayer[] AllPlayers;
1360 const CSmModeEvent[] PendingEvents;
1364 const CSmMapBase[] MapBases;
1368 const CSmMapLandmark[] MapLandmarks;
1372 const CSmMapLandmark[] MapLandmarks_PlayerSpawn;
1376 const CSmMapLandmark[] MapLandmarks_Gauge;
1380 const CSmMapLandmark[] MapLandmarks_Sector;
1384 const CSmMapLandmark[] MapLandmarks_BotPath;
1388 const CSmMapLandmark[] MapLandmarks_ObjectAnchor;
1392 const CSmMapLandmark[] MapLandmarks_Gate;
1396 const CSmScore[] Scores;
1400 Integer[] ClanScores;
1404 Void PassOn(CSmModeEvent Event);
1408 Void Discard(CSmModeEvent Event);
1412 Void SpawnPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CSmMapPlayerSpawn PlayerSpawn,Integer ActivationDate);
1416 Void SpawnBotPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CSmMapPlayerSpawn PlayerSpawn,Integer ActivationDate);
1420 Void SpawnBotPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CSmMapBotPath BotPath,Integer ActivationDate);
1424 Void UnspawnPlayer(CSmPlayer Player);
1428 Void ClearScores();
1432 Void SetPlayerClan(CSmPlayer Player,Integer ClanNum);
1436 Void SetPlayerWeapon(CSmPlayer Player,EWeapon DefaultWeapon,Boolean AutoSwitchWeapon);
1440 Void SetPlayerReloadAllWeapons(CSmPlayer Player,Boolean ReloadAllWeapons);
1444 Void SetPlayerAmmo(CSmPlayer Player,EWeapon Weapon,Integer Count);
1448 Integer GetPlayerAmmo(CSmPlayer Player,EWeapon Weapon);
1452 Void AddPlayerAmmo(CSmPlayer Player,EWeapon Weapon,Real DeltaCount);
1456 Void SetPlayerAmmoMax(CSmPlayer Player,EWeapon Weapon,Integer Count);
1460 Integer GetPlayerAmmoMax(CSmPlayer Player,EWeapon Weapon);
1464 Void AddPlayerArmor(CSmPlayer Victim,Integer DeltaArmor,CSmPlayer Shooter,Integer ShooterPoints);
1468 Void RemovePlayerArmor(CSmPlayer Victim,Integer DeltaArmor,CSmPlayer Shooter,Integer ShooterPoints);
1472 Integer GetWeaponNum(EWeapon Weapon);
1476 Boolean CanRespawnPlayer(CSmPlayer Player);
1480 Void RespawnPlayer(CSmPlayer Player);
1484 Void RespawnPlayer(CSmPlayer Player,CSmMapLandmark CheckpointLandmark);
1488 CSmPlayer CreateBotPlayer(Ident ModelId,Integer TeamNum);
1492 Void DestroyBotPlayer(CSmPlayer BotPlayer);
1496 Void DestroyAllBotPlayers();
1500 Void ScriptedBot_Move(CSmPlayer BotPlayer,Vec3 Goal);
1504 Void ScriptedBot_MoveDelta(CSmPlayer BotPlayer,Vec3 Delta);
1508 Void ScriptedBot_MoveAndAim(CSmPlayer BotPlayer,Vec3 Goal);
1512 Void ScriptedBot_MoveDeltaAndAim(CSmPlayer BotPlayer,Vec3 Delta);
1516 Void ScriptedBot_Aim(CSmPlayer BotPlayer,Vec3 Goal);
1520 Void ScriptedBot_AimDelta(CSmPlayer BotPlayer,Real DeltaYaw,Real DeltaPitch);
1524 Void ScriptedBot_RequestAction(CSmPlayer BotPlayer);
1528 Void ScriptedBot_RequestGunTrigger(CSmPlayer BotPlayer);
1532 Void ActionLoad(CSmPlayer Player,EActionSlot ActionSlot,Ident ModelId);
1536 Void ActionBind(CSmPlayer Player,EActionSlot ActionSlot,EActionInput ActionInput);
1540 Void ActionSetVariant(CSmPlayer Player,EActionSlot ActionSlot,Integer ActionVariant);
1544 Void SetNbFakePlayers(Integer NbClan1,Integer NbClan2);
1548 const CSmObject[] Objects;
1552 CSmObject ObjectCreate(Ident ModelId);
1556 Void ObjectDestroy(CSmObject Object);
1560 Void ObjectDestroyAll();
1564 Void Replay_SaveAttackScore(CSmPlayer Player,Integer Score);
1568 Void Replay_SaveDefenseScore(CSmPlayer Player,Integer Score);
1572 Void Replay_SaveTeamScore(Integer Team,Integer Score);
1576 Void Replay_SavePlayerOfInterest(CSmPlayer Player);
1580 Void Replay_SaveWinner(CSmPlayer Player);
1584 Void Replay_SaveInterface();
1585};
1586
1595 const Integer ArenaNow;
1599 const CSmPlayer InputPlayer;
1603 const CSmPlayer GUIPlayer;
1607 const CSmPlayer[] Players;
1611 const CSmScore[] Scores;
1615 const Integer[] ClanScores;
1619 Boolean HideResumePlayingButton;
1623 const CSmMapBase[] MapBases;
1627 const CSmMapLandmark[] MapLandmarks;
1631 const CSmMapLandmark[] MapLandmarks_PlayerSpawn;
1635 const CSmMapLandmark[] MapLandmarks_Gauge;
1639 const CSmMapLandmark[] MapLandmarks_Sector;
1643 const CSmMapLandmark[] MapLandmarks_BotPath;
1647 const CSmMapLandmark[] MapLandmarks_ObjectAnchor;
1651 const CSmMapLandmark[] MapLandmarks_Gate;
1652};
1653
1658struct CSmAction : public CNod {
1662 const Integer Now;
1666 const Integer Variant;
1670 CSmPlayer[] Players;
1674 CSmPlayer Owner;
1678 const Boolean IsActive;
1682 Integer Energy;
1686 Integer EnergyMax;
1690 Integer EnergyCost;
1694 Boolean EnergyReload;
1698 const CSmActionEvent[] PendingEvents;
1702 Void SendRulesEvent(Text Param1,Text[] Param2,CSmPlayer Shooter,CSmPlayer Victim);
1706 Ident GetAnimModelId(Text ModelName);
1710 Void PlayAnimOnPlayer(Ident AnimModelId,CSmPlayer Player);
1714 Void PlayAnimAtPosition(Ident AnimModelId,Vec3 Position,Vec3 Direction);
1718 Ident GetProjectileModelId(Text ModelName);
1722 Void CreateProjectile(CSmPlayer PlayerToIgnore,Ident ProjectileModelId,Vec3 InitialPosition,Vec3 InitialDirection,Vec3 InitialVelocity);
1726 Void CreateProjectile(CSmPlayer PlayerToIgnore,Ident ProjectileModelId,Vec3 InitialPosition,Vec3 InitialDirection,Vec3 InitialVelocity,Integer ContextId);
1730 Void CreateShoot(CSmPlayer Shooter,Ident ProjectileModelId);
1734 Void CreateShoot(CSmPlayer Shooter,Ident ProjectileModelId,Integer ContextId);
1738 Integer Cooldown;
1742 Boolean Cooldown_IsReady(Integer Now);
1746 Void Cooldown_Start();
1747};
1748
1753struct CSmMapType : public CMapType {
1757 const CSmMode Mode;
1761 const CSmPlayer[] AllPlayers;
1765 const CSmPlayer[] Players;
1766};
1767
1776 const CTmMlPlayer InputPlayer;
1780 const CTmMlPlayer GUIPlayer;
1784 const Integer NbLaps;
1788 const Boolean IndependantLaps;
1792 const CTmMlPlayer[] Players;
1796 const CTmScore[] Scores;
1800 const Integer[] ClanScores;
1804 const Vec3 MapStartLinePos;
1812 const Vec3[] MapFinishLinePos;
1816 const Boolean MapIsLapRace;
1820 const Integer MapNbLaps;
1821};
1822
1827struct CTmMode : public CMode {
1828 enum ETmScoreSortOrder {
1829 TotalPoints,
1830 BestRace_Time,
1831 BestRace_Stunts,
1832 BestRace_NbRespawns,
1833 BestRace_CheckpointsProgress,
1834 PrevRace_Time,
1835 Name,
1836 LadderRankSortValue,
1837 };
1838 enum ETMRespawnBehaviour {
1839 Normal,
1840 DoNothing,
1841 GiveUpBeforeFirstCheckPoint,
1842 AlwaysGiveUp,
1843 };
1844 enum ETmRaceChronoBehaviour {
1845 Auto,
1846 Hidden,
1847 CountDown,
1848 Normal,
1849 };
1850 enum EPersonalGhost {
1851 Disabled,
1852 Latest,
1853 FastestRace,
1854 };
1858 const CTmPlayer[] AllPlayers;
1862 const CTmPlayer[] Spectators;
1866 const CTmPlayer[] Players;
1870 const CTmPlayer[] PlayersRacing;
1874 const CTmPlayer[] PlayersWaiting;
1878 const CTmScore[] Scores;
1882 Integer Clan1Score;
1886 Integer Clan2Score;
1890 Integer[] ClanScores;
1894 const Integer ClansNbTotal;
1898 const Integer[] ClansNbPlayers;
1902 const CTmModeEvent[] PendingEvents;
1906 Void PassOn(CTmModeEvent Event);
1910 Void Discard(CTmModeEvent Event);
1914 Void SpawnPlayer(CTmPlayer Player,Integer ClanNum,Integer RaceStartTime);
1918 Void UnspawnPlayer(CTmPlayer Player);
1922 Void SetPlayerClan(CTmPlayer Player,Integer ClanNum);
1926 Void Scores_Sort(ETmScoreSortOrder SortOrder);
1930 Void Scores_Clear();
1934 Void Ladder_ComputeRank(ETmScoreSortOrder SortOrder);
1938 Integer CutOffTimeLimit;
1942 Integer NbLaps;
1946 Boolean IndependantLaps;
1950 Boolean UseClans;
1954 Boolean UseForcedClans;
1958 ETMRespawnBehaviour RespawnBehaviour;
1962 Boolean UiRounds;
1966 Boolean UiLaps;
1970 Boolean UiStuntsMode;
1974 Boolean UiDisplayStuntsNames;
1978 Boolean UiDisableHelpMessage;
1982 Integer UiScoresPointsLimit;
1986 ETmRaceChronoBehaviour UiRaceChrono;
1990 Boolean HideOpponents;
1994 Integer ForceMaxOpponents;
1998 Boolean EnableLegacyXmlRpcCallbacks;
2002 Boolean MedalGhost_ShowGold;
2006 Boolean MedalGhost_ShowSilver;
2010 Boolean MedalGhost_ShowBronze;
2014 EPersonalGhost PersonalGhost;
2018 const Vec3 MapStartLinePos;
2026 const Vec3[] MapFinishLinePos;
2030 const Boolean MapIsLapRace;
2034 const Integer MapNbLaps;
2035};
2036
2041struct CTmMapType : public CMapType {
2045 const CTmMode Mode;
2049 const CTmPlayer[] AllPlayers;
2053 const CTmPlayer[] Players;
2054};
2055
2059struct CNod {
2063 const Ident Id;
2064};
2065
2070struct CMlPage : public CNod {
2074 const CMlFrame MainFrame;
2078 CMlControl GetFirstChild(Text ControlId);
2082 Boolean LinksInhibited;
2086 Void GetClassChildren(Text Class,CMlFrame Frame,Boolean Recursive);
2090 const CMlControl[] GetClassChildren_Result;
2091};
2092
2097struct CUser : public CNod {
2098 enum EEchelon {
2099 None,
2100 Bronze1,
2101 Bronze2,
2102 Bronze3,
2103 Silver1,
2104 Silver2,
2105 Silver3,
2106 Gold1,
2107 Gold2,
2108 Gold3,
2109 };
2110 enum ETagType {
2111 Bronze,
2112 Silver,
2113 Gold,
2114 Nadeo,
2115 };
2116 enum EStereoDisplayMode {
2117 None,
2118 Stereo,
2119 HMD,
2120 };
2124 const Text Login;
2128 const Text Name;
2132 const Text AvatarUrl;
2136 const Text ZonePath;
2140 const Text ZoneFlagUrl;
2144 const Text CountryFlagUrl;
2148 const Text Language;
2152 const Text Description;
2156 const Vec3 Color;
2160 const Text ClubLink;
2164 const Text BroadcastTVLogin;
2168 const Text SteamUserId;
2172 const Integer FameStars;
2176 const EEchelon Echelon;
2180 const Boolean IsBeginner;
2184 const Integer LadderRank;
2188 const Integer LadderTotal;
2192 const Real LadderPoints;
2196 const Text LadderZoneName;
2200 const Text LadderZoneFlagUrl;
2204 const Integer RequestedClan;
2208 const Boolean RequestsSpectate;
2212 const Boolean IsFakeUser;
2216 const Integer[] Tags_Favored_Indices;
2220 const Text[] Tags_Id;
2224 const ETagType[] Tags_Type;
2228 const Text[] Tags_Comments;
2232 const Text[] Tags_Deliverer;
2236 const Text[] AlliesConnected;
2240 const EStereoDisplayMode StereoDisplayMode;
2241 enum PlayerType {
2242 Human,
2243 Fake (not net),
2244 Net,
2245 Replay,
2246 };
2247 enum SpectatorMode {
2248 Void,
2249 Watcher,
2250 LocalWatcher,
2251 Target,
2252 };
2253};
2254
2259struct CTitle : public CNod {
2263 const Text TitleId;
2267 const Text BaseTitleId;
2271 const Text Name;
2275 const Text Desc;
2279 const Text InfoUrl;
2283 const Text DownloadUrl;
2287 const Text TitleVersion;
2288};
2289
2293struct CMlEvent : public CNod {
2294 enum Type {
2295 KeyPress,
2296 MouseClick,
2297 MouseOver,
2298 MouseOut,
2299 EntrySubmit,
2300 MenuNavigation,
2301 PluginCustomEvent,
2302 };
2303 enum EMenuNavAction {
2304 Up,
2305 Right,
2306 Left,
2307 Down,
2308 Select,
2309 Cancel,
2310 PageUp,
2311 PageDown,
2312 };
2316 const Type Type;
2320 const Integer KeyCode;
2324 const Text KeyName;
2328 const Text CharPressed;
2332 const Text ControlId;
2336 const CMlControl Control;
2340 const EMenuNavAction MenuNavAction;
2344 const Text CustomEventType;
2348 const Text[] CustomEventData;
2349};
2350
2354struct CXmlManager : public CNod {
2358 CXmlDocument Create(Text Contents);
2362 CXmlDocument Create(Text Contents,Boolean GenerateText,Boolean GenerateTextRaw,Boolean GenerateTextResursive);
2366 Void Destroy(CXmlDocument Document);
2370 const CXmlDocument[] Documents;
2371};
2372
2376struct CHttpManager : public CNod {
2380 CHttpRequest CreateGet(Text Url);
2384 CHttpRequest CreateGet(Text Url,Boolean UseCache);
2388 CHttpRequest CreatePost(Text Url,Text Resource);
2392 Void Destroy(CHttpRequest Request);
2396 Boolean IsValidUrl(Text Url);
2400 const CHttpRequest[] Requests;
2404 const Integer SlotsAvailable;
2405};
2406
2410struct CAudioManager : public CNod {
2411 enum ELibSound {
2412 Alert,
2413 ShowDialog,
2414 HideDialog,
2415 ShowMenu,
2416 HideMenu,
2417 Focus,
2418 Valid,
2419 Start,
2420 Countdown,
2421 Victory,
2422 ScoreIncrease,
2423 Checkpoint,
2424 };
2428 CAudioSound CreateSound(Text Url);
2432 CAudioSound CreateSound(Text Url,Real VolumedB,Boolean IsMusic,Boolean IsLooping,Boolean IsSpatialized);
2436 Void DestroySound(CAudioSound Sound);
2440 const CAudioSound[] Sounds;
2444 Void PlaySoundEvent(CAudioSound Sound,Real VolumedB);
2448 Void PlaySoundEvent(Text Url,Real VolumedB);
2452 Void PlaySoundEvent(ELibSound Sound,Integer SoundVariant,Real VolumedB);
2456 Void PlaySoundEvent(CAudioSound Sound,Real VolumedB,Integer Delay);
2460 Void PlaySoundEvent(Text Url,Real VolumedB,Integer Delay);
2464 Void PlaySoundEvent(ELibSound Sound,Integer SoundVariant,Real VolumedB,Integer Delay);
2468 Void ClearAllDelayedSoundsEvents();
2472 Boolean ForceEnableMusic;
2476 Real LimitMusicVolumedB;
2477};
2478
2483struct CMlControl : public CNod {
2484 enum AlignHorizontal {
2485 Left,
2486 HCenter,
2487 Right,
2488 None,
2489 };
2490 enum AlignVertical {
2491 Top,
2492 VCenter,
2493 Bottom,
2494 None,
2495 VCenter2,
2496 };
2500 const Text ControlId;
2504 const Text[] ControlClasses;
2508 Boolean HasClass(Text Class);
2512 Vec2 Size;
2516 AlignHorizontal HorizontalAlign;
2520 AlignVertical VerticalAlign;
2524 Boolean Visible;
2528 Vec3 RelativePosition;
2532 Real RelativeScale;
2536 Real RelativeRotation;
2540 const Vec3 AbsolutePosition;
2544 const Real AbsoluteScale;
2548 const Real AbsoluteRotation;
2552 Boolean DataAttributeExists(Text DataName);
2556 Text DataAttributeGet(Text DataName);
2560 Void DataAttributeSet(Text DataName,Text DataValue);
2564 Void Show();
2568 Void Hide();
2572 Void Unload();
2576 Void Focus();
2577};
2578
2582struct CMlGraphCurve : public CNod {
2586 Vec2[] Points;
2590 Vec3 Color;
2594 Void SortPoints();
2598 Text Style;
2603};
2604
2609struct CMap : public CNod {
2613 const CMapInfo MapInfo;
2617 Text MapName;
2621 Text Comments;
2625 const Text AuthorZoneIconUrl;
2629 const Text CollectionName;
2633 const Text DecorationName;
2637 const Text AuthorLogin;
2641 const Text AuthorNickName;
2645 const Text AuthorZonePath;
2649 const Text MapType;
2653 const Text MapStyle;
2657 Integer TMObjective_AuthorTime;
2661 Integer TMObjective_GoldTime;
2665 Integer TMObjective_SilverTime;
2669 Integer TMObjective_BronzeTime;
2673 Integer TMObjective_NbLaps;
2677 Boolean TMObjective_IsLapRace;
2681 Text ObjectiveTextAuthor;
2685 Text ObjectiveTextGold;
2689 Text ObjectiveTextSilver;
2693 Text ObjectiveTextBronze;
2697 const Integer CopperPrice;
2701 const Int3 Size;
2702};
2703
2707struct CUILayer : public CNod {
2708 enum EUILayerType {
2709 Normal,
2710 ScoresTable,
2711 ScreenIn3d,
2712 AltMenu,
2713 Markers,
2714 CutScene,
2715 InGameMenu,
2716 EditorPlugin,
2717 ManiaplanetPlugin,
2718 ManiaplanetMenu,
2719 LoadingScreen,
2720 };
2724 Boolean IsVisible;
2728 EUILayerType Type;
2732 Text AttachId;
2736 Text ManialinkPage;
2740 const CMlPage LocalPage;
2741};
2742
2747 enum Type {
2748 LayerCustomEvent,
2749 KeyPress,
2750 (reserved),
2751 MenuNavigation,
2752 CursorSelectionBegin,
2753 CursorSelectionEnd,
2754 CursorChange,
2755 MapModified,
2756 EditorInput,
2757 EditAnchor,
2758 EditObjectives,
2759 StartValidation,
2760 };
2761 enum EInput {
2762 Unknown,
2763 Menu,
2764 SwitchToRace,
2765 CursorUp,
2766 CursorRight,
2767 CursorDown,
2768 CursorLeft,
2769 CursorRaise,
2770 CursorLower,
2771 CursorTurn,
2772 CursorPick,
2773 CursorPlace,
2774 CursorDelete,
2775 CameraUp,
2776 CameraRight,
2777 CameraDown,
2778 CameraLeft,
2779 IconUp,
2780 IconRight,
2781 IconDown,
2782 IconLeft,
2783 };
2787 const Type Type;
2791 const EInput Input;
2795 const Ident EditedAnchorDataId;
2796};
2797
2801struct CBlockModel : public CCollector {
2802 enum EBaseType {
2803 None,
2804 Conductor,
2805 Generator,
2806 Collector,
2807 };
2808 enum EWayPointType {
2809 Start,
2810 Finish,
2811 Checkpoint,
2812 None,
2813 StartFinish,
2814 };
2815 enum EProdState {
2816 Obsolete,
2817 GameBox,
2818 DevBuild,
2819 Release,
2820 };
2824 const Text Name;
2828 const Boolean IsRoad;
2832 const Boolean IsTerrain;
2836 const EWayPointType WaypointType;
2840 const Boolean NoRespawn;
2844 const CBlockModelVariantGround VariantGround;
2848 const CBlockModelVariantAir VariantAir;
2849};
2850
2859 const Boolean IsGround;
2863 const Boolean HasStart;
2867 const Boolean HasFinish;
2871 const Boolean HasCheckpoint;
2875 const CBlockModel GeneratedBlockModel;
2879 const Text Name;
2880};
2881
2885struct CItemAnchor : public CNod {
2886 enum CardinalDirections {
2887 North,
2888 East,
2889 South,
2890 West,
2891 };
2895 const Vec3 Position;
2896};
2897
2901struct CBlock : public CNod {
2902 enum CardinalDirections {
2903 North,
2904 East,
2905 South,
2906 West,
2907 };
2911 const Integer BlockScriptId;
2915 const Boolean CanHaveAnchor;
2919 Void UseDefaultAnchor();
2923 Void UseCustomAnchor();
2927 const Int3 Coord;
2931 const CardinalDirections Direction;
2935 const CBlockUnit[] BlockUnits;
2939 const CBlockModel BlockModel;
2940};
2941
2946struct CAnchorData : public CNod {
2950 const Text DefaultTag;
2954 const Integer DefaultOrder;
2958 Text Tag;
2962 Integer Order;
2963};
2964
2969struct CMode : public CNod {
2970 enum EMedal {
2971 None,
2972 Finished,
2973 Bronze,
2974 Silver,
2975 Gold,
2976 Author,
2977 };
2981 Text ModeStatusMessage;
2985 const CTitle LoadedTitle;
2989 const Text ServerLogin;
2993 const Text ServerName;
2997 const Text ServerModeName;
3001 const Text MapName;
3005 const CMap Map;
3009 const Text MapPlayerModelName;
3013 const CUser[] Users;
3017 const CTeam[] Teams;
3021 Text NeutralEmblemUrl;
3025 const Text ForcedClubLinkUrl1;
3029 const Text ForcedClubLinkUrl2;
3033 Void TweakTeamColorsToAvoidHueOverlap();
3037 const Integer Now;
3041 const Integer Period;
3045 Boolean MatchEndRequested;
3049 const Boolean ServerShutdownRequested;
3053 const Boolean MapLoaded;
3057 Void RequestLoadMap();
3061 Void RequestUnloadMap();
3065 const CMapInfo[] MapList;
3069 Integer NextMapIndex;
3073 const CUIConfigMgr UIManager;
3077 Void Ladder_OpenMatch_Request();
3081 Void Ladder_AddPlayer(CScore PlayerScore);
3085 Void Ladder_OpenMatch_BeginRequest();
3089 Void Ladder_OpenMatch_AddPlayer(CScore PlayerScore);
3093 Void Ladder_OpenMatch_EndRequest();
3097 Void Ladder_CloseMatchRequest();
3101 Void Ladder_CancelMatchRequest();
3105 const Boolean Ladder_RequestInProgress;
3109 Void Ladder_SetResultsVersion(Integer Version);
3113 Void Ladder_SetMatchMakingMatchId(Integer MatchId);
3117 Void Ladder_EnableChallengeMode(Boolean Enable);
3121 Boolean Admin_KickUser(CUser User,Text Reason);
3125 Void Admin_SetLobbyInfo(Boolean IsLobby,Integer LobbyPlayerCount,Integer LobbyMaxPlayerCount,Real LobbyPlayersLevel);
3129 Void AutoTeamBalance();
3133 Void Solo_SetNewRecord(CScore PlayerScore,EMedal PlayerScore);
3137 const Boolean Solo_NewRecordSequenceInProgress;
3141 const CXmlRpc XmlRpc;
3145 const CXmlManager Xml;
3149 const CHttpManager Http;
3153 Integer Synchro_AddBarrier();
3157 Boolean Synchro_BarrierReached(Integer Barrier);
3161 Boolean Users_AreAllies(CUser User1,CUser User2);
3165 Void Users_RequestSwitchToSpectator(CUser User);
3169 CUser Users_CreateFake(Text NickName,Integer RequestedTeam);
3173 Void Users_DestroyFake(CUser User);
3177 Void Users_SetNbFakeUsers(Integer NbTeam1,Integer NbTeam2);
3181 Void Users_DestroyAllFakes();
3185 Void ItemList_Begin();
3189 Ident ItemList_Add(Text ModelName);
3193 Ident ItemList_AddWithSkin(Text ModelName,Text SkinName);
3197 Void ItemList_End();
3201 Void DemoToken_StartUsingToken();
3205 Void DemoToken_StopUsingToken();
3209 Void DemoToken_GetAndUseToken(CUser User);
3213 Void ActionList_Begin();
3217 Ident ActionList_Add(Text ActionName);
3221 Void ActionList_End();
3225 Boolean UseMinimap;
3229 Boolean Replay_AutoStart;
3233 Void Replay_Start();
3237 Void Replay_Stop();
3238};
3239
3244struct CSmPlayer : public CPlayer {
3245 enum ESpawnStatus {
3246 NotSpawned,
3247 Spawning,
3248 Spawned,
3249 };
3253 const CSmScore Score;
3257 const ESpawnStatus SpawnStatus;
3261 const Integer StartTime;
3265 Integer EndTime;
3277 const Boolean AutoSwitchWeapon;
3281 const Integer CurWeapon;
3285 const Integer CurAmmo;
3289 const Integer CurAmmoMax;
3293 const Integer CurAmmoUnit;
3297 Integer Armor;
3301 Integer ArmorMax;
3305 Integer ArmorGain;
3309 Integer ArmorReplenishGain;
3317 Integer Stamina;
3341 Boolean AllowWallJump;
3345 Boolean AllowProgressiveJump;
3349 Boolean UseAlternateWeaponVisual;
3353 Boolean IsHighlighted;
3361 Vec3 ForceColor;
3365 Ident ForceModelId;
3369 Boolean HasShield;
3377 const Integer CurrentClan;
3381 const Integer IdleDuration;
3385 const Vec3 Position;
3389 const Real AimYaw;
3393 const Real AimPitch;
3397 const Vec3 AimDirection;
3401 const Boolean IsUnderground;
3405 const Boolean IsTouchingGround;
3409 const Boolean IsInAir;
3413 const Boolean IsOnTechGround;
3417 const Boolean IsOnTechLaser;
3421 const Boolean IsOnTechArrow;
3425 const Boolean IsOnTechArmor;
3429 const Boolean IsOnTechSafeZone;
3433 const Boolean IsOnTech;
3437 const Boolean IsOnTechNoWeapon;
3441 const Boolean IsInWater;
3445 const Vec3 Velocity;
3449 const Real Speed;
3453 const Boolean IsInOffZone;
3457 const Boolean IsCapturing;
3461 const CSmMapLandmark CapturedLandmark;
3465 const CSmObject[] Objects;
3469 const Boolean IsFakePlayer;
3473 const Boolean IsBot;
3477 const CSmPlayerDriver Driver;
3478};
3479
3483struct CSmModeEvent : public CNod {
3484 enum EType {
3485 Unknown,
3486 OnShoot,
3487 OnHit,
3488 OnNearMiss,
3489 OnArmorEmpty,
3490 OnCapture,
3491 OnShotDeny,
3492 OnFallDamage,
3493 OnCommand,
3494 OnPlayerAdded,
3495 OnPlayerRemoved,
3496 OnPlayerRequestRespawn,
3497 OnActionCustomEvent,
3498 OnActionEvent,
3499 OnPlayerTouchesObject,
3500 OnPlayerTriggersSector,
3501 OnPlayerThrowsObject,
3502 OnPlayerRequestActionChange,
3503 };
3504 enum EActionSlot {
3505 Slot_A,
3506 Slot_B,
3507 Slot_C,
3508 Slot_D,
3509 Slot_E,
3510 Slot_F,
3511 Slot_G,
3512 Slot_H,
3513 };
3514 enum EActionInput {
3515 Weapon,
3516 Movement,
3517 Activable1,
3518 Activable2,
3519 Activable3,
3520 Activable4,
3521 Consumable1,
3522 Consumable2,
3523 None,
3524 };
3525 enum EActionSlots {
3526 Weapon,
3527 Movement,
3528 Activable1,
3529 Activable2,
3530 Activable3,
3531 Activable4,
3532 None,
3533 };
3537 const EType Type;
3541 const CSmPlayer Player;
3545 Integer Damage;
3549 const CSmObject VictimObject;
3553 Integer ShooterPoints;
3557 const CSmPlayer Shooter;
3561 const CSmPlayer Victim;
3565 const Real Height;
3569 const Real MissDist;
3573 const Integer WeaponNum;
3577 const Boolean ShooterUsedAction;
3581 const Integer ShooterWeaponNum;
3585 const EActionSlot ShooterActionSlot;
3589 const Text ShooterActionId;
3593 const Boolean VictimUsedAction;
3597 const Integer VictimWeaponNum;
3601 const EActionSlot VictimActionSlot;
3605 const Text VictimActionId;
3609 const EActionSlot Action_Slot;
3613 const EActionInput ActionInput;
3617 const Text ActionId;
3621 const Text Param1;
3625 const Text[] Param2;
3629 const CSmObject Object;
3633 const CSmMapSector Sector;
3637 const CSmBlockPole BlockPole;
3641 const CSmMapLandmark Landmark;
3645 const Ident PlayerId;
3649 const CUser User;
3653 const Boolean PlayerWasSpawned;
3657 const Boolean PlayerWasInLadderMatch;
3661 const Vec3 PlayerLastPosition;
3665 const Vec3 PlayerLastAimDirection;
3669 const Boolean GiveUp;
3673 const Text CommandName;
3677 const Boolean CommandValueBoolean;
3681 const Integer CommandValueInteger;
3685 const Real CommandValueReal;
3689 const Text CommandValueText;
3693 const Integer ActionChange;
3694};
3695
3699struct CSmMapBase : public CNod {
3703 Integer Clan;
3707 Boolean IsActive;
3711 const Integer NumberOfCollectors;
3712};
3713
3718struct CSmMapLandmark : public CNod {
3722 const Text Tag;
3726 const Integer Order;
3730 const Vec3 Position;
3734 const CSmMapBase Base;
3738 const CSmMapGate Gate;
3742 const CSmMapGauge Gauge;
3746 const CSmMapSector Sector;
3750 const CSmMapPlayerSpawn PlayerSpawn;
3754 const CSmMapBotPath BotPath;
3758 const CSmMapObjectAnchor ObjectAnchor;
3759};
3760
3765struct CSmScore : public CScore {
3769 const Integer TeamNum;
3773 Integer Points;
3777 Integer RoundPoints;
3781 const Integer NbEliminationsInflicted;
3785 const Integer NbEliminationsTaken;
3789 const Integer NbRespawnsRequested;
3793 const Integer DamageInflicted;
3797 const Integer DamageTaken;
3801 Void Clear();
3802};
3803
3808struct CSmObject : public CNod {
3809 enum EStatus {
3810 OnPlayer,
3811 OnAnchor,
3812 InWorld,
3813 Unspawned,
3814 };
3818 const EStatus Status;
3822 const Ident ModelId;
3826 Void SetAnchor(CSmMapObjectAnchor ObjectAnchor);
3830 Void SetPlayer(CSmPlayer Player);
3834 Void SetPosition(Vec3 Position);
3838 Void SetPositionAndVel(Vec3 Position,Vec3 Vel);
3842 Void SetUnspawned();
3850 const Vec3 Position;
3854 const Vec3 Vel;
3858 Integer MachineState;
3862 Boolean Throwable;
3863};
3864
3870 enum EUISound {
3871 Default,
3872 Silence,
3873 StartMatch,
3874 EndMatch,
3875 StartRound,
3876 EndRound,
3877 PhaseChange,
3878 TieBreakPoint,
3879 TiePoint,
3880 VictoryPoint,
3881 Capture,
3882 TimeOut,
3883 Notice,
3884 Warning,
3885 PlayerEliminated,
3886 PlayerHit,
3887 Checkpoint,
3888 Finish,
3889 Record,
3890 ScoreProgress,
3891 RankChange,
3892 Bonus,
3893 FirstHit,
3894 Combo,
3895 PlayersRemaining,
3896 Custom1,
3897 Custom2,
3898 Custom3,
3899 Custom4,
3900 };
3901 enum EInGameMenuResult {
3902 Resume,
3903 Quit,
3904 NormalMenu,
3905 AdvancedMenu,
3906 ServerSettings,
3907 };
3911 const Integer GameTime;
3927 const Boolean UseClans;
3931 const Boolean UseForcedClans;
3935 const CMap Map;
3939 Void ShowCurChallengeCard();
3943 Void ShowModeHelp();
3947 Void CopyServerLinkToClipBoard();
3951 Void JoinTeam1();
3955 Void JoinTeam2();
3959 const CTeam[] Teams;
3967 Void ShowProfile(Text Player);
3971 Void ShowInGameMenu();
3975 const Text CurrentServerLogin;
3979 const Text CurrentServerName;
3983 const Text CurrentServerJoinLink;
3987 const Text CurrentServerModeName;
3991 Void PlayUiSound(EUISound Sound,Integer SoundVariant,Real Volume);
3995 Void CloseInGameMenu(EInGameMenuResult Result);
3996};
3997
4001struct CSmActionEvent : public CNod {
4002 enum EType {
4003 OnHitPlayer,
4004 OnProjectileStart,
4005 OnProjectileEnd,
4006 OnActiveChange,
4007 };
4011 const EType Type;
4015 const CSmPlayer Player;
4019 const Integer Damage;
4023 const Ident ProjectileModelId;
4027 const Integer ContextId;
4031 const Vec3 Position;
4035 const Vec3 Direction;
4039 const Vec3 Normal;
4040};
4041
4046struct CMapType : public CEditorPlugin {
4047 enum ValidationStatus {
4048 NotValidable,
4049 Validable,
4050 Validated,
4051 };
4055 Boolean CustomEditAnchorData;
4059 Void ClearMapMetadata();
4063 ValidationStatus ValidationStatus;
4067 Text ValidabilityRequirementsMessage;
4071 const Boolean ValidationEndRequested;
4075 Void StartTestMapWithMode(Text RulesModeName);
4079 Void RequestEnterPlayground();
4083 Void RequestLeavePlayground();
4087 const Boolean IsSwitchedToPlayground;
4091 const CUIConfigMgr UIManager;
4095 const CUser[] Users;
4096};
4097
4102struct CTmMlPlayer : public CPlayer {
4103 enum ERaceState {
4104 BeforeStart,
4105 Running,
4106 Finished,
4107 Eliminated,
4108 };
4112 const Integer CurrentClan;
4116 const ERaceState RaceState;
4120 const Boolean IsSpawned;
4124 CTrackManiaScore Score;
4128 const Integer RaceStartTime;
4132 const Integer LapStartTime;
4136 CTmResult CurRace;
4140 CTmResult CurLap;
4144 const Integer CurrentNbLaps;
4148 const Integer CurTriggerIndex;
4152 const Integer CurCheckpointRaceTime;
4156 const Integer CurCheckpointLapTime;
4160 const Real AccelCoef;
4164 const Real ControlCoef;
4168 const Real GravityCoef;
4172 const Vec3 Position;
4176 const Real AimYaw;
4180 const Real AimPitch;
4184 const Vec3 AimDirection;
4188 const Real Distance;
4192 const Real Speed;
4196 const Integer DisplaySpeed;
4197};
4198
4203struct CTmScore : public CScore {
4207 const Integer TeamNum;
4211 Integer Points;
4215 CTmResult BestRace;
4219 CTmResult BestLap;
4223 Integer PrevRaceDeltaPoints;
4227 CTmResult PrevRace;
4231 CTmResult TempResult;
4235 Void Clear();
4236};
4237
4242struct CTmPlayer : public CPlayer {
4246 const Integer CurrentClan;
4250 const CTmScore Score;
4254 Integer RaceStartTime;
4258 Boolean IsSpawned;
4262 CTmResult CurRace;
4266 CTmResult CurLap;
4270 Integer CurrentNbLaps;
4274 const Integer CurTriggerIndex;
4278 const Vec3 Position;
4282 const Real AimYaw;
4286 const Real AimPitch;
4290 const Vec3 AimDirection;
4294 Real AccelCoef;
4298 Real ControlCoef;
4302 Real GravityCoef;
4303};
4304
4308struct CTmModeEvent : public CNod {
4309 enum EType {
4310 Unknown,
4311 StartLine,
4312 WayPoint,
4313 GiveUp,
4314 Respawn,
4315 Stunt,
4316 OnPlayerAdded,
4317 OnPlayerRemoved,
4318 OnCommand,
4319 };
4320 enum EStuntFigure {
4321 None,
4322 StraightJump,
4323 Flip,
4324 BackFlip,
4325 Spin,
4326 Aerial,
4327 AlleyOop,
4328 Roll,
4329 Corkscrew,
4330 SpinOff,
4331 Rodeo,
4332 FlipFlap,
4333 Twister,
4334 FreeStyle,
4335 SpinningMix,
4336 FlippingChaos,
4337 RollingMadness,
4338 WreckNone,
4339 WreckStraightJump,
4340 WreckFlip,
4341 WreckBackFlip,
4342 WreckSpin,
4343 WreckAerial,
4344 WreckAlleyOop,
4345 WreckRoll,
4346 WreckCorkscrew,
4347 WreckSpinOff,
4348 WreckRodeo,
4349 WreckFlipFlap,
4350 WreckTwister,
4351 WreckFreeStyle,
4352 WreckSpinningMix,
4353 WreckFlippingChaos,
4354 WreckRollingMadness,
4355 TimePenalty,
4356 RespawnPenalty,
4357 Grind,
4358 Reset,
4359 };
4363 const EType Type;
4367 const CTmPlayer Player;
4371 Integer RaceTime;
4375 const Integer CheckpointInRace;
4379 const Integer CheckpointInLap;
4383 const Boolean IsEndLap;
4387 const Boolean IsEndRace;
4391 Integer LapTime;
4395 Integer StuntsScore;
4399 Integer NbRespawns;
4403 const Ident BlockId;
4407 Real Speed;
4411 Real Distance;
4415 Real Damages;
4419 const EStuntFigure StuntFigure;
4423 const Integer Angle;
4427 const Integer Points;
4431 const Integer Combo;
4435 const Boolean IsStraight;
4439 const Boolean IsReverse;
4443 const Boolean IsMasterJump;
4447 const Real Factor;
4451 const CUser User;
4455 const Boolean PlayerWasSpawned;
4459 const Boolean PlayerWasInLadderMatch;
4463 const Text CommandName;
4467 const Boolean CommandValueBoolean;
4471 const Integer CommandValueInteger;
4475 const Real CommandValueReal;
4479 const Text CommandValueText;
4480};
4481
4486struct CMlFrame : public CMlControl {
4487 enum EControlType {
4488 Audio,
4489 Entry,
4490 FileEntry,
4491 Frame,
4492 Label,
4493 Quad,
4494 Video,
4495 };
4499 const CMlControl[] Controls;
4503 CMlControl GetFirstChild(Text ControlId);
4507 Boolean ClipWindowActive;
4511 Vec2 ClipWindowRelativePosition;
4515 Vec2 ClipWindowSize;
4516};
4517
4521struct CXmlDocument : public CNod {
4525 const Text TextContents;
4529 const CXmlNode Root;
4533 const CXmlNode[] Nodes;
4537 CXmlNode GetFirstChild(Text Name);
4538};
4539
4544struct CHttpRequest : public CNod {
4548 const Text Url;
4560 const Boolean IsCompleted;
4561};
4562
4566struct CAudioSound : public CNod {
4570 Void Play();
4574 Void Stop();
4578 const Boolean IsPlaying;
4582 const Boolean DownloadInProgress;
4586 Real Volume;
4590 Real VolumedB;
4594 Real Pitch;
4598 Vec3 RelativePosition;
4602 Real PlayCursor;
4606 const Real PlayLength;
4607};
4608
4612struct CMapInfo : public CNod {
4616 const Ident MapUid;
4620 const Text Comments;
4624 const Integer CopperPrice;
4628 const Text CollectionName;
4632 const Text AuthorLogin;
4636 const Text AuthorNickName;
4640 const Text AuthorZonePath;
4644 const Text MapType;
4648 const Text MapStyle;
4652 const Boolean Unlocked;
4656 const Text Name;
4660 const Text Path;
4661};
4662
4666struct CCollector : public CNod {
4670 const Text Name;
4674 Text PageName;
4675};
4676
4681 enum EnumAutoTerrainPlaceType {
4682 Auto,
4683 Force,
4684 DoNotPlace,
4685 DoNotDestroy,
4686 };
4687};
4688
4694
4698struct CBlockUnit : public CNod {
4702 const Int3 Offset;
4706 const CBlockUnitModel BlockUnitModel;
4710 const CBlock Block;
4711};
4712
4717struct CTeam : public CNod {
4721 Text Name;
4725 Text ZonePath;
4729 Text City;
4733 Text EmblemUrl;
4737 Text PresentationManialinkUrl;
4741 Text ClubLinkUrl;
4745 Vec3 ColorPrimary;
4749 Vec3 ColorSecondary;
4753 const Text ColorText;
4757 const Text ColorizedName;
4758};
4759
4763struct CUIConfigMgr : public CNod {
4767 Void ResetAll();
4771 const CUIConfig UIAll;
4775 const CUIConfig[] UI;
4779 CUIConfig GetUI(CPlayer Player);
4783 CUIConfig GetUI(CUser User);
4787 const CUILayer[] UILayers;
4791 CUILayer UILayerCreate();
4795 Void UILayerDestroy(CUILayer Layer);
4799 Void UILayerDestroyAll();
4803 const CUILayer[] UIReplayLayers;
4807 Integer UISequenceMaxDuration;
4808};
4809
4814struct CXmlRpc : public CNod {
4818 const CXmlRpcEvent[] PendingEvents;
4822 Void SendCallback(Text Param1,Text Param2);
4826 Void SendCallbackArray(Text Type,Text[] Data);
4830 Void SendCallback_BeginRound();
4834 Void SendCallback_EndRound();
4835};
4836
4841struct CPlayer : public CNod {
4845 const CUser User;
4849 const Text Login;
4853 const Text Name;
4857 const Integer RequestedClan;
4861 const Boolean RequestsSpectate;
4862};
4863
4867struct CSmPlayerDriver : public CNod {
4868 enum ESmDriverBehaviour {
4869 Static,
4870 Turret,
4871 Scripted,
4872 IA,
4873 Patrol,
4874 Escape,
4875 Saunter,
4876 };
4877 enum ESmDriverPatrolMode {
4878 OneTrip,
4879 BackAndForth,
4880 Loop,
4881 };
4882 enum ESmAttackFilter {
4883 All,
4884 AllPlayers,
4885 AllBots,
4886 AllOpposite,
4887 OppositePlayers,
4888 OppositeBots,
4889 Nobody,
4890 };
4894 ESmDriverBehaviour Behaviour;
4898 Real AggroRadius;
4902 Real DisengageDistance;
4906 Real PathSpeedCoef;
4910 Real Accuracy;
4914 Integer ReactionTime;
4918 Integer ShootPeriodMin;
4922 Integer ShootPeriodMax;
4926 Boolean RocketAnticipation;
4930 Real Fov;
4934 ESmAttackFilter AttackFilter;
4938 const CSmPlayer Target;
4942 const Boolean IsStuck;
4946 Boolean IsFlying;
4950 Integer PathOffset;
4954 Real Agressivity;
4958 Boolean UseOldShootingSystem;
4962 ESmDriverPatrolMode Patrol_Mode;
4966 Vec3 Escape_AnchorPoint;
4970 Real Escape_DistanceSafe;
4974 Real Escape_DistanceMinEscape;
4978 Real Escape_DistanceMaxEscape;
4982 Vec3 Saunter_AnchorPoint;
4986 Integer Saunter_BaseChillingTime;
4990 Integer Saunter_ChillingTimeDelta;
4994 Real Saunter_Radius;
4998 Boolean Scripted_ForceAimInMoveDir;
5002 CSmPlayer ForcedTarget;
5006 CSmPlayer[] TargetsToAvoid;
5007};
5008
5012struct CSmMapSector : public CNod {
5016 const Ident[] PlayersIds;
5017};
5018
5023struct CSmBlockPole : public CSmBlock {
5027 Boolean Captured;
5031 const CSmSector Sector;
5035 const CSmGauge Gauge;
5036};
5037
5041struct CSmMapGate : public CNod {
5045 Integer Clan;
5049 Boolean Automatic;
5053 Boolean ManualClosed;
5057 const Boolean AutoClosed;
5061 Boolean AutoIsActive;
5065 Integer AutoCloseDelay;
5069 Integer AutoOpenSpeed;
5070};
5071
5075struct CSmMapGauge : public CNod {
5079 Integer Clan;
5087 Integer Value;
5091 Integer Max;
5095 Integer Speed;
5099 Boolean Captured;
5100};
5101
5105struct CSmMapPlayerSpawn : public CNod {
5106};
5107
5111struct CSmMapBotPath : public CNod {
5115 const Integer Clan;
5119 const Vec3[] Path;
5123 const Boolean IsFlying;
5124};
5125
5129struct CSmMapObjectAnchor : public CNod {
5133 const Text ItemName;
5137 const Ident ItemModelId;
5138};
5139
5144struct CScore : public CNod {
5148 const CUser User;
5152 const Boolean IsRegisteredForLadderMatch;
5156 const Real LadderScore;
5160 Integer LadderRankSortValue;
5164 Real LadderMatchScoreValue;
5168 Integer LadderClan;
5169};
5170
5175struct CUIConfig : public CNod {
5176 enum EUISequence {
5177 None,
5178 Playing,
5179 Intro,
5180 Outro,
5181 Podium,
5182 CustomMTClip,
5183 EndRound,
5184 PlayersPresentation,
5185 UIInteraction,
5186 RollingBackgroundIntro,
5187 CustomMTClip_WithUIInteraction,
5188 };
5189 enum EUIStatus {
5190 None,
5191 Normal,
5192 Warning,
5193 Error,
5194 Official,
5195 };
5196 enum EVisibility {
5197 None,
5198 Normal,
5199 Manual,
5200 ForcedHidden,
5201 ForcedVisible,
5202 };
5203 enum ELabelsVisibility {
5204 None,
5205 Never,
5206 Always,
5207 WhenInFrustum,
5208 WhenVisible,
5209 WhenInMiddleOfScreen,
5210 };
5211 enum EAvatarVariant {
5212 Default,
5213 Sad,
5214 Happy,
5215 };
5216 enum EUISound {
5217 Default,
5218 Silence,
5219 StartMatch,
5220 EndMatch,
5221 StartRound,
5222 EndRound,
5223 PhaseChange,
5224 TieBreakPoint,
5225 TiePoint,
5226 VictoryPoint,
5227 Capture,
5228 TimeOut,
5229 Notice,
5230 Warning,
5231 PlayerEliminated,
5232 PlayerHit,
5233 Checkpoint,
5234 Finish,
5235 Record,
5236 ScoreProgress,
5237 RankChange,
5238 Bonus,
5239 FirstHit,
5240 Combo,
5241 PlayersRemaining,
5242 Custom1,
5243 Custom2,
5244 Custom3,
5245 Custom4,
5246 };
5247 enum ENoticeLevel {
5248 Default,
5249 PlayerInfo,
5250 PlayerWarning,
5251 MapInfo,
5252 MapWarning,
5253 MatchInfo,
5254 MatchWarning,
5255 };
5256 enum EObserverMode {
5257 Default,
5258 Forced,
5259 Forbidden,
5260 Manual,
5261 };
5265 EUISequence UISequence;
5269 const Boolean UISequenceIsCompleted;
5273 Text UISequence_CustomMTClip;
5277 Integer UISequence_CustomMTRefTime;
5281 Boolean UISequence_CanSkipIntroMT;
5285 Text UISequence_PodiumPlayersWin;
5289 Text UISequence_PodiumPlayersLose;
5293 Text ManialinkPage;
5297 Text BigMessage;
5301 Text BigMessageAvatarLogin;
5305 EAvatarVariant BigMessageAvatarVariant;
5309 EUISound BigMessageSound;
5313 Integer BigMessageSoundVariant;
5317 Text StatusMessage;
5321 Text GaugeMessage;
5325 Real GaugeRatio;
5329 Integer GaugeClan;
5337 const CUILayer[] UILayers;
5341 Boolean OverlayHideNotices;
5345 Boolean OverlayHideMapInfo;
5349 Boolean OverlayHideOpponentsInfo;
5353 Boolean OverlayHideChat;
5357 Boolean OverlayHideCheckPointList;
5361 Boolean OverlayHideRoundScores;
5365 Boolean OverlayHideCountdown;
5369 Boolean OverlayHideCrosshair;
5373 Boolean OverlayHideGauges;
5377 Boolean OverlayHideConsumables;
5381 Boolean OverlayHide321Go;
5385 Boolean OverlayHideBackground;
5389 Boolean OverlayHideChrono;
5393 Boolean OverlayHideSpeedAndDist;
5397 Boolean OverlayHidePersonnalBestAndRank;
5401 Boolean OverlayHidePosition;
5405 Boolean OverlayHideCheckPointTime;
5409 Boolean OverlayHideEndMapLadderRecap;
5413 Boolean OverlayHideMultilapInfos;
5417 Boolean OverlayHideSpectatorControllers;
5421 Boolean OverlayHideSpectatorInfos;
5425 Boolean OverlayChatHideAvatar;
5433 Vec2 OverlayChatOffset;
5437 Vec2 CountdownCoord;
5441 Boolean NoticesFilter_HidePlayerInfo;
5445 Boolean NoticesFilter_HidePlayerWarning;
5449 Boolean NoticesFilter_HidePlayerInfoIfNotMe;
5453 Boolean NoticesFilter_HidePlayerWarningIfNotMe;
5457 Boolean NoticesFilter_HideMapInfo;
5461 Boolean NoticesFilter_HideMapWarning;
5465 Boolean NoticesFilter_HideMatchInfo;
5469 Boolean NoticesFilter_HideMatchWarning;
5473 ENoticeLevel NoticesFilter_LevelToShowAsBigMessage;
5477 Text ScoreTable;
5481 EVisibility ScoreTableVisibility;
5485 Text SmallScoreTable;
5489 EVisibility SmallScoreTableVisibility;
5493 Boolean ScoreTableOnlyManialink;
5497 Boolean AltMenuNoDefaultScores;
5501 Boolean AltMenuNoCustomScores;
5505 Boolean OverlayScoreSummary;
5509 Ident ScoreSummary_Player1;
5513 Integer ScoreSummary_Points1;
5517 Integer ScoreSummary_RoundPoints1;
5521 Integer ScoreSummary_MatchPoints1;
5525 Real ScoreSummary_Gauge1;
5529 Ident ScoreSummary_Player2;
5533 Integer ScoreSummary_Points2;
5537 Integer ScoreSummary_RoundPoints2;
5541 Integer ScoreSummary_MatchPoints2;
5545 Real ScoreSummary_Gauge2;
5549 Boolean ScreenIn3dHideScoreSummary;
5553 Boolean ScreenIn3dHideVersus;
5557 Integer CountdownEndTime;
5561 EUIStatus UIStatus;
5565 ELabelsVisibility AlliesLabelsVisibility;
5569 EVisibility AlliesLabelsShowGauges;
5573 EVisibility AlliesLabelsShowNames;
5581 ELabelsVisibility TeamLabelsVisibility;
5585 EVisibility TeamLabelsShowGauges;
5589 EVisibility TeamLabelsShowNames;
5593 ELabelsVisibility OpposingTeamLabelsVisibility;
5597 EVisibility OpposingTeamLabelsShowGauges;
5601 EVisibility OpposingTeamLabelsShowNames;
5605 Boolean ForceSpectator;
5609 Integer SpectatorForceCameraType;
5613 Ident SpectatorAutoTarget;
5617 Ident SpectatorForcedTarget;
5621 Integer SpectatorForcedClan;
5625 Real SpectatorCamAutoLatitude;
5629 Real SpectatorCamAutoLongitude;
5633 Real SpectatorCamAutoRadius;
5637 EObserverMode SpectatorObserverMode;
5641 Void SendChat(Text Text);
5645 Void SendNotice(Text Text,ENoticeLevel Level,CUser Avatar,EAvatarVariant AvatarVariant,EUISound Sound,Integer SoundVariant);
5649 Text GetLayerManialinkAction(CUILayer Layer);
5653 Void ClearLayerManialinkAction(CUILayer Layer);
5654};
5655
5661};
5662
5666struct CTmResult : public CNod {
5667 enum ETmRaceResultCriteria {
5668 Time,
5669 Stunts,
5670 NbRespawns,
5671 CheckpointsProgress,
5672 None,
5673 };
5677 Integer Time;
5681 Integer StuntsScore;
5685 Integer NbRespawns;
5689 Integer[] Checkpoints;
5693 Integer Compare(CTmResult Other,ETmRaceResultCriteria Criteria);
5694};
5695
5699struct CXmlNode : public CNod {
5703 const Text Name;
5707 const Text TextContents;
5711 const Text TextRawContents;
5715 const Text TextRecursiveContents;
5719 const CXmlNode[] Children;
5723 Text GetAttributeText(Text Name,Text DefaultValue);
5727 Integer GetAttributeInteger(Text Name,Integer DefaultValue);
5731 Real GetAttributeReal(Text Name,Real DefaultValue);
5735 Boolean GetAttributeBoolean(Text Name,Boolean DefaultValue);
5739 CXmlNode GetFirstChild(Text Name);
5740};
5741
5745struct CBlockModelVariant : public CNod {
5749 Text Name;
5753 const Boolean IsAllUnderground;
5757 const Boolean IsPartUnderground;
5761 const Int3 Size;
5765 const Int3 OffsetBoundingBoxMin;
5769 const Int3 OffsetBoundingBoxMax;
5773 CBlockUnitModel[] BlockUnitModels;
5774};
5775
5779struct CBlockUnitModel : public CNod {
5780 enum CardinalDirEnum {
5781 North,
5782 East,
5783 South,
5784 West,
5785 };
5786 enum MultiDirEnum {
5787 SameDir,
5788 SymmetricalDirs,
5789 AllDir,
5790 OpposedDirOnly,
5791 PerpendicularDirsOnly,
5792 NextDirOnly,
5793 PreviousDirOnly,
5794 };
5798 const Int3 Offset;
5802 const CBlockModelClip[] Clips;
5803};
5804
5808struct CXmlRpcEvent : public CNod {
5809 enum EType {
5810 Unknown,
5811 Callback,
5812 CallbackArray,
5813 };
5817 const EType Type;
5821 const Text Param1;
5825 const Text Param2;
5829 const Text ParamArray1;
5833 const Text[] ParamArray2;
5834};
5835
5840struct CSmBlock : public CSmLandmark {
5844 const CSmBase Base;
5845};
5846
5850struct CSmSector : public CNod {
5854 const Ident[] PlayersIds;
5855};
5856
5860struct CSmGauge : public CNod {
5864 Integer Clan;
5872 Integer Value;
5876 Integer Max;
5880 Integer Speed;
5881};
5882
5887 enum EnumClipType {
5888 ClassicClip,
5889 FreeClipSide,
5890 FreeClipTop,
5891 FreeClipBottom,
5892 };
5893 enum MultiDirEnum {
5894 SameDir,
5895 SymmetricalDirs,
5896 AllDir,
5897 OpposedDirOnly,
5898 PerpendicularDirsOnly,
5899 NextDirOnly,
5900 PreviousDirOnly,
5901 };
5902};
5903
5908struct CSmLandmark : public CNod {
5912 const Text Tag;
5916 const Integer Order;
5920 const Vec3 Position;
5924 const Vec3 DirFront;
5925};
5926
5930struct CSmBase : public CNod {
5934 Integer Clan;
5938 Boolean IsActive;
5942 const Integer NumberOfCollectors;
5943};
5944
5948namespace MathLib {
5949
5953 Integer Abs(Integer Argument1);
5957 Real Abs(Real Argument1);
5961 Real ToReal(Integer Argument1);
5965 Real Sin(Real Argument1);
5969 Real Cos(Real Argument1);
5973 Real Tan(Real Argument1);
5977 Real Atan2(Real Argument1, Real Argument2);
5981 Real Exp(Real Argument1);
5985 Real Rand(Real Argument1, Real Argument2);
5989 Integer Rand(Integer Argument1, Integer Argument2);
5993 Real NearestReal(Integer Argument1);
5997 Integer NearestInteger(Real Argument1);
6001 Integer FloorInteger(Real Argument1);
6005 Integer CeilingInteger(Real Argument1);
6009 Real Distance(Vec3 Argument1, Vec3 Argument2);
6013 Real DotProduct(Vec3 Argument1, Vec3 Argument2);
6017 Vec3 CrossProduct(Vec3 Argument1, Vec3 Argument2);
6021 Real Angle(Vec3 Argument1, Vec3 Argument2);
6025 Real OrientedAngle(Vec3 Argument1, Vec3 Argument2);
6029 Real PI();
6033 Real Asin(Real Argument1);
6037 Real Acos(Real Argument1);
6041 Real Pow(Real Argument1, Real Argument2);
6045 Real Ln(Real Argument1);
6049 Real Sqrt(Real Argument1);
6085 Real Clamp(Real _X, Real _Min, Real _Max);
6086};
6087
6091namespace TextLib {
6092
6127 Text SubString(Text _Text, Integer _Start, Integer _Length);
6138 Text SubText(Text _Text, Integer _Start, Integer _Length);
6191 Text TimeToText(Integer _Time, Boolean _IncludeCentiSeconds);
6210 Text FormatInteger(Integer Argument1, Integer Argument2);
6220 Text FormatReal(Real _Value, Integer _FPartLength, Boolean _HideZeroes, Boolean _HideDot);
6226 Text ToUpperCase(Text _TextToChange);
6232 Text ToLowerCase(Text _TextToChange);
6241 Boolean CompareWithoutFormat(Text _Text1, Text _Text2, Boolean _IsCaseSensitive);
6253 Boolean Find(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
6257 Text Compose(Text Argument1);
6261 Text Compose(Text Argument1, Text Argument2);
6265 Text Compose(Text Argument1, Text Argument2, Text Argument3);
6269 Text Compose(Text Argument1, Text Argument2, Text Argument3, Text Argument4);
6273 Text Compose(Text Argument1, Text Argument2, Text Argument3, Text Argument4, Text Argument5);
6277 Text Compose(Text Argument1, Text Argument2, Text Argument3, Text Argument4, Text Argument5, Text Argument6);
6281 Text MLEncode(Text Argument1);
6285 Text URLEncode(Text Argument1);
6289 Text StripFormatting(Text Argument1);
6293 Text[Void] Split(Text Argument1, Text Argument2);
6297 Text Join(Text Argument1, Text[Void] Argument2);
6301 Text SmartSplit(Text Argument1, Integer Argument2, Integer Argument3, Integer Argument4);
6305 Text Trim(Text Argument1);
6309 Text ReplaceChars(Text Argument1, Text Argument2, Text Argument3);
6318 Text Replace(Text _Text, Text _ToReplace, Text _Replacement);
6326};
6327
6331namespace MapUnits {
6332
6336 CardinalDirections GetNextDir(CardinalDirections Argument1);
6340 CardinalDirections GetPreviousDir(CardinalDirections Argument1);
6344 CardinalDirections GetOpposedDir(CardinalDirections Argument1);
6348 CardinalDirections AddDirs(CardinalDirections Argument1, CardinalDirections Argument2);
6352 CardinalDirections SubDirs(CardinalDirections Argument1, CardinalDirections Argument2);
6356 Int3 GetNeighbourCoord(Int3 Argument1, CardinalDirections Argument2);
6360 Int3 GetRotatedOffset(Int3 Argument1, CardinalDirections Argument2);
6364 Int3 GetRotatedOffsetPositive(Int3 Argument1, CardinalDirections Argument2, Int3 Argument3);
6365};
6366
6370namespace AnimLib {
6371
6383 Real Ease(Text _Function, Real _T, Real _Base, Real _Change, Real _Duration);
6389 Real EaseLinear(Integer _T, Real _Base, Real _Change, Integer _Duration);
6395 Real EaseInQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
6401 Real EaseOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
6407 Real EaseInOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
6413 Real EaseInCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
6419 Real EaseOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
6425 Real EaseInOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
6431 Real EaseInQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
6437 Real EaseOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
6443 Real EaseInOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
6449 Real EaseInQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
6455 Real EaseOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
6461 Real EaseInOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
6467 Real EaseInSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
6473 Real EaseOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
6479 Real EaseInOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
6485 Real EaseInExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
6491 Real EaseOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
6497 Real EaseInOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
6503 Real EaseInCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
6509 Real EaseOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
6515 Real EaseInOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
6521 Real EaseInBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
6527 Real EaseOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
6533 Real EaseInOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
6539 Real EaseInElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
6545 Real EaseOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
6551 Real EaseInOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
6557 Real EaseInElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
6563 Real EaseOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
6569 Real EaseInOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
6575 Real EaseInBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
6581 Real EaseOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
6587 Real EaseInOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
6588};
6589
Definition doc.h:4
Definition doc.h:9
Definition doc.h:8
Definition doc.h:2
Definition doc.h:3
Definition doc.h:5
Definition doc.h:6
Definition doc.h:7
Definition doc.h:1
(undocumented)
Definition doc.h:6370
Real EaseInBounce(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInSine(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInQuart(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInCubic(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseLinear(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInElastic(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real SmoothStep(Real _X)
Returns the value smoothly transitionning from 0 to 1.
Real EaseInCirc(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real Ease(Text _Function, Real _T, Real _Base, Real _Change, Real _Duration)
Returns the value animated from Base to Base+Delta using Robert Penner easing functions....
Real EaseInOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInBack(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInQuint(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInQuad(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
Real EaseInExp(Integer _T, Real _Base, Real _Change, Integer _Duration)
Returns the value animated from Base to Base+Delta using R. Penner easing functions.
(undocumented)
Definition doc.h:6331
(undocumented)
Definition doc.h:5948
Integer Clamp(Integer _X, Integer _Min, Integer _Max)
Returns the value X clamped to the range Min..Max.
Integer Max(Integer _A, Integer _B)
Returns the maximum between A and B.
Integer Min(Integer _A, Integer _B)
Returns the minimum between A and B.
(undocumented)
Definition doc.h:6091
Vec3 ToColor(Text _Text)
Returns the RGB color corresponding to _Text.
Text SubString(Text _Text, Integer _Start, Integer _Length)
Returns a substring of _Text.
Real ToReal(Text _Text)
Returns the Real corresponding to _Text.
Text ToLowerCase(Text _TextToChange)
Changes upper case characters to lower case characters.
Integer Length(Text _Text)
Returns the length of _Text.
Text ToText(Integer _Integer)
Returns the Text corresponding to _Integer.
Text ColorToText(Vec3 _Color)
Returns the Text corresponding to _Color.
Text TimeToText(Integer _Time, Boolean _IncludeCentiSeconds)
Returns the Text corresponding to _Time.
Text GetTranslatedText(Text _Text)
Lookup the text in the current translation dictionary.
Boolean Find(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive)
Returns True if the searched text is found in the text to search in.
Text Replace(Text _Text, Text _ToReplace, Text _Replacement)
Replaces occurences of _ToReplace in _Text with _Replacement.
Text ToUpperCase(Text _TextToChange)
Changes lower case characters to upper case characters.
Text FormatReal(Real _Value, Integer _FPartLength, Boolean _HideZeroes, Boolean _HideDot)
Returns the Text corresponding to a Real. With formatting.
Boolean CompareWithoutFormat(Text _Text1, Text _Text2, Boolean _IsCaseSensitive)
Compares texts without taking format characters in account.
Integer ToInteger(Text _Text)
Returns the Integer corresponding to _Text.
Text SubText(Text _Text, Integer _Start, Integer _Length)
Returns a substring of _Text.
Definition doc.h:2946
Definition doc.h:2410
Definition doc.h:4566
Definition doc.h:2901
Definition doc.h:5886
Definition doc.h:2801
Definition doc.h:4692
Definition doc.h:4680
Definition doc.h:5745
Definition doc.h:4698
Definition doc.h:5779
Definition doc.h:4666
Definition doc.h:2746
Definition doc.h:728
Definition doc.h:2376
Definition doc.h:4544
const Text Result
Definition doc.h:4552
const Integer StatusCode
Definition doc.h:4556
const Text Url
Definition doc.h:4548
Definition doc.h:2885
Definition doc.h:2855
Definition doc.h:565
Definition doc.h:491
Definition doc.h:624
Definition doc.h:2609
Definition doc.h:4612
Definition doc.h:4046
Definition doc.h:430
Definition doc.h:423
Definition doc.h:2483
Definition doc.h:162
Definition doc.h:2293
Definition doc.h:185
Definition doc.h:4486
Definition doc.h:326
Real Ratio
Definition doc.h:342
Real GradingRatio
Definition doc.h:346
Definition doc.h:2582
Real Width
Definition doc.h:2602
Definition doc.h:373
Definition doc.h:196
Definition doc.h:255
Definition doc.h:400
Real ZoomFactor
Definition doc.h:416
Definition doc.h:2070
Definition doc.h:262
Definition doc.h:15
Void SendCustomEvent(Text Type, Text[] Data)
const CUser LocalUser
Definition doc.h:55
Definition doc.h:3869
Void SetSpectateTarget(Text Player)
CUIConfig UI
Definition doc.h:3915
Boolean IsSpectatorMode
Definition doc.h:3923
CUIConfig ClientUI
Definition doc.h:3919
Definition doc.h:713
Definition doc.h:2969
Definition doc.h:2059
Definition doc.h:4841
Definition doc.h:5144
Definition doc.h:4001
Definition doc.h:1658
Definition doc.h:5930
Definition doc.h:5840
Definition doc.h:5023
Definition doc.h:5860
Real ValueReal
Definition doc.h:5868
Definition doc.h:5908
Definition doc.h:3699
Definition doc.h:5111
Definition doc.h:5041
Definition doc.h:5075
Real ValueReal
Definition doc.h:5083
Definition doc.h:3718
Definition doc.h:5129
Definition doc.h:5105
Definition doc.h:5012
Definition doc.h:1753
Definition doc.h:1591
Definition doc.h:3483
Definition doc.h:1181
Definition doc.h:3808
const CSmPlayer Player
Definition doc.h:3846
Definition doc.h:4867
Definition doc.h:3244
Real AmmoPower
Definition doc.h:3273
Real EnergyLevel
Definition doc.h:3357
Real StaminaGain
Definition doc.h:3325
Real SpeedPower
Definition doc.h:3333
Real AmmoGain
Definition doc.h:3269
Real ArmorPower
Definition doc.h:3313
Real StaminaMax
Definition doc.h:3321
Real StaminaPower
Definition doc.h:3329
Real JumpPower
Definition doc.h:3337
Real ThrowSpeed
Definition doc.h:3373
Definition doc.h:3765
Definition doc.h:5850
Definition doc.h:678
Definition doc.h:4717
Definition doc.h:2259
Definition doc.h:2041
Definition doc.h:4102
Definition doc.h:1772
const Vec3[] MapCheckpointPos
Definition doc.h:1808
Definition doc.h:4308
Definition doc.h:1827
const Vec3[] MapCheckpointPos
Definition doc.h:2022
Definition doc.h:4242
Definition doc.h:5666
Definition doc.h:4203
Definition doc.h:5660
Definition doc.h:5175
Integer AlliesLabelsMaxCount
Definition doc.h:5577
Integer OverlayChatLineCount
Definition doc.h:5429
Text MarkersXML
Definition doc.h:5333
Definition doc.h:4763
Definition doc.h:2707
Definition doc.h:2097
Definition doc.h:4521
Definition doc.h:2354
Definition doc.h:5699
Definition doc.h:5808
Definition doc.h:4814