Trackmania ManiaScript Reference 2024.12.12.1515
A ManiaScript Reference of the new Trackmania.
Loading...
Searching...
No Matches
doc.h
1/***********************************************************************************
2 *
3 * Maniaplanet Script API Documentation
4 *
5 *
6 * BuildInfo : date=2024-12-12_15_15 git=127322-0e952939855 GameVersion=3.3.0
7 * Defines : Windowless TrackmaniaStandalone .
8 *
9 ***********************************************************************************/
10
11
12struct Void {};
13struct Integer{};
14struct Real{};
15struct Boolean{};
16struct Text{};
17struct Vec2{Real X; Real Y;};
18struct Vec3{Real X; Real Y; Real Z;};
19struct Int2{Integer X; Integer Y;};
20struct Int3{Integer X; Integer Y; Integer Z;};
21struct Ident{};
22
23template <typename ElemType>
24struct Array {
25 ElemType operator[](Integer Index);
26 ElemType operator[](Ident Id);
27 ElemType operator[](CNod Object);
28 ElemType get(Integer Index);
29 ElemType get(Integer Index, ElemType DefaultValue);
30 ElemType get(Ident Id);
31 ElemType get(Ident Id, ElemType DefaultValue);
32 Integer count;
33 Array<ElemType> sort();
34 Array<ElemType> sortreverse();
35 Void add(ElemType Elem);
36 Void addfirst(ElemType Elem);
37 Boolean remove(ElemType Elem);
38 Boolean exists(ElemType Elem);
39 Integer keyof(ElemType Elem);
40 Void clear();
41 Boolean containsonly(Array<ElemType> Elem);
42 Boolean containsoneof(Array<ElemType> Elem);
43 Array<ElemType> slice(Integer Index);
44 Array<ElemType> slice(Integer Index, Integer Count);
45};
46
47template <typename KeyType, typename ElemType>
49 ElemType operator[](KeyType Key);
50 ElemType get(KeyType Key);
51 ElemType get(KeyType Key, ElemType DefaultValue);
52 Integer count;
57 Boolean remove(ElemType Elem);
58 Boolean removekey(KeyType Key);
59 Boolean exists(ElemType Elem);
60 Boolean existskey(KeyType Key);
61 KeyType keyof(ElemType Elem);
62 Void clear();
63 Boolean containsonly(Array<ElemType> Elem);
64 Boolean containsoneof(Array<ElemType> Elem);
65};
66
74class CMlScript : public CNod {
75public :
79 enum LinkType {
80 ExternalBrowser,
81 ManialinkBrowser,
82 Goto,
83 ExternalFromId,
84 ManialinkFromId,
85 GotoFromId,
86 };
90 CMlPage * const Page;
94 Boolean const PageIsVisible;
98 Boolean PageAlwaysUpdateScript;
102 Integer const Now;
106 Integer const Period;
110 Integer const CurrentTime;
118 CTitle * const LoadedTitle;
122 Array<CMlScriptEvent* const > PendingEvents;
126 Void Dbg_SetProcessed(CMlScriptEvent Event);
130 Boolean Dbg_WarnOnDroppedEvents;
134 Real const MouseX;
138 Real const MouseY;
142 Boolean const MouseLeftButton;
146 Boolean const MouseRightButton;
150 Boolean const MouseMiddleButton;
154 Boolean const KeyUp;
158 Boolean const KeyDown;
162 Boolean const KeyLeft;
166 Boolean const KeyRight;
170 Boolean const KeyReturn;
174 Boolean const KeySpace;
178 Boolean const KeyDelete;
182 Boolean IsKeyPressed(Integer KeyCode);
186 Boolean EnableMenuNavigationInputs;
190 Void EnableMenuNavigation(Boolean EnableInputs,Boolean WithAutoFocus,CMlControl AutoBackControl,Integer InputPriority);
194 Void EnableMenuNavigation(Boolean EnableInputs,Boolean WithAutoFocus,Boolean WithManualScroll,CMlControl AutoBackControl,Integer InputPriority);
198 Boolean const IsMenuNavigationForeground;
202 Void OpenLink(Text Url,CMlScript::LinkType LinkType);
206 Void TriggerPageAction(Text ActionString);
210 CParsingManager * const Xml;
214 CHttpManager * const Http;
218 CVideoManager * const Video;
222 CAudioManager * const Audio;
226 CInputManager * const Input;
230 CDataFileMgr * const DataFileMgr;
234 CScoreMgr * const ScoreMgr;
238 CRankingsZoneMgr * const ZoneMgr;
242 CUserV2Manager * const UserMgr;
246 CAnimManager * const AnimMgr;
250 CMenuSceneManager * const MenuSceneMgr;
254 CSystemPlatform * const System;
258 CWSNotificationManager * const WSNotificationMgr;
266 Void PreloadImage(Text ImageUrl);
270 Void PreloadAll();
274 Text Dbg_DumpDeclareForVariables(CNod Nod,Boolean StatsOnly);
278 Text FilterProfanities(Text TextToFilter);
279};
280
288class CManiaApp : public CNod {
289public :
293 enum ELinkType {
294 ExternalBrowser,
295 ManialinkBrowser,
296 };
300 Text const ManiaAppUrl;
304 Text const ManiaAppBaseUrl;
308 Integer const Now;
312 Boolean const IsVisible;
316 Integer LayersDefaultManialinkVersion;
320 CUser * const LocalUser;
324 CTitle * const LoadedTitle;
328 Boolean EnableMenuNavigationInputs;
336 CUILayer UILayerCreate();
340 Void UILayerDestroy(CUILayer Layer);
344 Void UILayerDestroyAll();
348 Void LayerCustomEvent(CUILayer Layer,Text Type,Array<Text> Data);
352 Void OpenLink(Text Url,CManiaApp::ELinkType LinkType);
360 Void Dialog_Message(Text Message);
364 CParsingManager * const Xml;
368 CHttpManager * const Http;
372 CVideoManager * const Video;
376 CAudioManager * const Audio;
380 CInputManager * const Input;
384 CDataFileMgr * const DataFileMgr;
388 CScoreMgr * const ScoreMgr;
392 CRankingsZoneMgr * const ZoneMgr;
396 CTrackingMgr * const TrackingMgr;
400 CUserV2Manager * const UserMgr;
404 CWSNotificationManager * const WSNotificationMgr;
408 CSystemPlatform * const System;
412 Text Dbg_DumpDeclareForVariables(CNod Nod,Boolean StatsOnly);
416 Boolean TTS_Disabled;
420 Ident TTS_Context_Enter(Integer Level);
424 Ident TTS_Context_Leave(Ident ContextId);
428 Void TTS_Context_Change(Ident ContextId,CMlControl Control);
432 Void TTS_Context_Change(Ident ContextId,Text Text,Boolean Translate);
436 Void TTS_Context_Read(Integer Level);
440 Void TTS_Context_Read(Ident ContextId);
444 Text FilterProfanities(Text TextToFilter);
445};
446
455public :
459 enum EMeshEditorAPI {
460 Materials,
461 Interactions,
462 Display,
463 Global,
464 Sets,
465 Voxel,
466 PickInfo,
467 UndoRedo,
468 };
472 Void Help_Open();
476 Void Help_Close();
480 CEditorPluginHandle GetPluginHandle(Text Name);
484 Void SendPluginEvent(CEditorPluginHandle Handle,Text Type,Array<Text> Data);
488 Void Context_SetActive(Text ContextName,Boolean IsActive);
492 Boolean Context_IsActive(Text ContextName);
496 Boolean Binding_IsActive(Text BindingName);
500 Boolean Binding_IsActive(Text ContextName,Text BindingName);
504 Void Plugin_SetClearance(CEditorPluginHandle Handle,CEditorMainPlugin::EMeshEditorAPI API,Boolean IsAllowed);
512 Void Module_Load(Text ModuleName);
517};
518
526class CServerPlugin : public CNod {
527public :
531 CTitle * const LoadedTitle;
535 CMapInfo * const MapInfo;
539 CClient GetClient(Text Login);
543 CClient GetClient(CUIConfig UI);
547 CClient GetClient(CUser Login);
551 CClient GetClientFromWebServicesUserId(Text WebServicesUserId);
567 CPlayer GetPlaygroundPlayer(Text Login);
583 Text NeutralEmblemUrl;
587 Text ForcedClubLinkUrl1;
591 Text ForcedClubLinkUrl2;
595 Void TweakTeamColorsToAvoidHueOverlap();
599 Array<Integer> ClansNbPlayers;
603 Array<Integer> ClanScores;
607 Integer const Now;
615 Void TriggerModeScriptEvent(Text Type,Array<Text> Data);
619 Void SendModeScriptCommand(Text CommandName,Boolean BoolVal);
623 Void SendModeScriptCommand(Text CommandName,Integer IntVal);
627 Void SendModeScriptCommand(Text CommandName,Real RealVal);
631 Void SendModeScriptCommand(Text CommandName,Text TextVal);
635 Void SendModeScriptCommand(Text CommandName,Vec2 Vec2Val);
639 Void SendModeScriptCommand(Text CommandName,Vec3 Vec3Val);
643 Void SendModeScriptCommand(Text CommandName,Int2 Int2Val);
647 Void SendModeScriptCommand(Text CommandName,Int3 Int3Val);
651 Boolean const MapLoaded;
655 Boolean const MapUnloadRequested;
663 Integer const CurMapIndex;
667 Integer NextMapIndex;
671 Void RestartMap();
675 Void NextMap();
679 Boolean HoldMapUnloadRequest;
687 CUIConfigMgr * const UIManager;
691 CServerAdmin * const ServerAdmin;
695 CXmlRpc * const XmlRpc;
699 CParsingManager * const Xml;
703 CHttpManager * const Http;
707 CSystemPlatform * const System;
711 Text Dbg_DumpDeclareForVariables(CNod Nod,Boolean StatsOnly);
715 Array<CTaskResult* const > TaskResults;
719 Void TaskResult_Release(Ident TaskResultId);
727 CTaskResult_Ghost Ghost_Download(Text Url);
731 Void GhostDriver_Playlist_Clear(CPlayer Player);
735 Void GhostDriver_Playlist_Add(CPlayer Player,CGhost Ghost);
736};
737
742public :
746 Text const CategoryType;
750 Integer const CategoryLevel;
754 NWebServicesPrestige::EPrestigeMode const Mode;
758 Text const PrestigeId;
762 Integer const PrestigeLevel;
766 Text const RewardDisplayName;
770 Text const RewardFileUrl;
774 Text const RewardThumbnailUrl;
778 Text const RewardType;
782 Text const SkinOptions;
786 Integer const StatCurrentValue;
790 Integer const StatValueForNextLevel;
794 Integer const TimeStamp;
798 Integer const Year;
799};
800
805public :
809 Text const SquadId;
813 Text const SquadType;
817 Integer const TimeStamp;
818};
819
824public :
828 Text const InvitedAccountId;
832 Text const InvitedCountryFlagUrl;
836 Text const InvitedDisplayName;
840 Boolean const InvitedIsCommunicationRestricted;
844 Boolean const InvitedIsFirstPartyDisplayName;
848 Text const InvitedSkinOptions;
852 Array<CSkinInfo*> InvitedSkinList;
856 Text const InvitedWebServicesUserId;
860 Text const SquadId;
864 Text const SquadType;
868 Integer const TimeStamp;
869};
870
875public :
879 Text const InvitedAccountId;
883 Text const InvitedCountryFlagUrl;
887 Text const InvitedDisplayName;
891 Boolean const InvitedIsFirstPartyDisplayName;
895 Text const InvitedWebServicesUserId;
899 Text const InviterAccountId;
903 Text const InviterCountryFlagUrl;
907 Text const InviterDisplayName;
911 Boolean const InviterIsFirstPartyDisplayName;
915 Text const InviterWebServicesUserId;
919 Text const SquadId;
923 Text const SquadType;
927 Integer const TimeStamp;
928};
929
934public :
938 Text const CancelerAccountId;
942 Text const CancelerCountryFlagUrl;
946 Text const CancelerDisplayName;
950 Boolean const CancelerIsFirstPartyDisplayName;
954 Text const CancelerWebServicesUserId;
958 Text const InvitedAccountId;
962 Text const InvitedCountryFlagUrl;
966 Text const InvitedDisplayName;
970 Boolean const InvitedIsFirstPartyDisplayName;
974 Text const InvitedWebServicesUserId;
978 Text const SquadId;
982 Text const SquadType;
986 Integer const TimeStamp;
987};
988
993public :
997 Text const InvitedAccountId;
1001 Text const InvitedCountryFlagUrl;
1005 Text const InvitedDisplayName;
1009 Boolean const InvitedIsFirstPartyDisplayName;
1013 Text const InvitedWebServicesUserId;
1017 Text const SquadId;
1021 Text const SquadType;
1025 Integer const TimeStamp;
1026};
1027
1032public :
1036 Text const InvitedAccountId;
1040 Text const InvitedCountryFlagUrl;
1044 Text const InvitedDisplayName;
1048 Boolean const InvitedIsFirstPartyDisplayName;
1052 Text const InvitedWebServicesUserId;
1056 Text const SquadId;
1060 Text const SquadType;
1064 Integer const TimeStamp;
1065};
1066
1071public :
1075 Text const InvitedAccountId;
1079 Text const InvitedCountryFlagUrl;
1083 Text const InvitedDisplayName;
1087 Boolean const InvitedIsFirstPartyDisplayName;
1091 Text const InvitedWebServicesUserId;
1095 Text const SquadId;
1099 Text const SquadType;
1103 Integer const TimeStamp;
1104};
1105
1110public :
1114 Text const InviterAccountId;
1118 Text const InviterCountryFlagUrl;
1122 Text const InviterDisplayName;
1126 Boolean const InviterIsFirstPartyDisplayName;
1130 Text const InviterWebServicesUserId;
1134 Text const SquadId;
1138 Text const SquadType;
1142 Integer const TimeStamp;
1143};
1144
1149public :
1153 Text const SquadId;
1157 Text const SquadType;
1161 Boolean const IsLocked;
1165 Integer const TimeStamp;
1166};
1167
1172public :
1176 Text const MemberAccountId;
1180 Text const MemberCountryFlagUrl;
1184 Text const MemberDisplayName;
1188 Boolean const MemberIsCommunicationRestricted;
1192 Boolean const MemberIsFirstPartyDisplayName;
1196 Text const MemberSkinOptions;
1200 Array<CSkinInfo*> MemberSkinList;
1204 Text const MemberWebServicesUserId;
1208 Text const SquadId;
1212 Text const SquadType;
1216 Integer const TimeStamp;
1217};
1218
1223public :
1227 Text const KickerAccountId;
1231 Text const KickerCountryFlagUrl;
1235 Text const KickerDisplayName;
1239 Boolean const KickerIsFirstPartyDisplayName;
1243 Text const KickerWebServicesUserId;
1247 Text const MemberAccountId;
1251 Text const MemberCountryFlagUrl;
1255 Text const MemberDisplayName;
1259 Boolean const MemberIsFirstPartyDisplayName;
1263 Text const MemberWebServicesUserId;
1267 Text const SquadId;
1271 Text const SquadType;
1275 Integer const TimeStamp;
1276};
1277
1282public :
1286 Text const MemberAccountId;
1290 Text const MemberCountryFlagUrl;
1294 Text const MemberDisplayName;
1298 Boolean const MemberIsFirstPartyDisplayName;
1302 Text const MemberWebServicesUserId;
1306 Text const SquadId;
1310 Text const SquadType;
1314 Integer const TimeStamp;
1315};
1316
1321public :
1325 Text const SquadId;
1329 Text const SquadType;
1333 Text const LeaderAccountId;
1337 Text const LeaderWebServicesUserId;
1341 Boolean const WasForcedToLeaveDueToCrossPlaySetting;
1345 Integer const TimeStamp;
1346};
1347
1352public :
1356 CTrophyAchievement * TrophyAchievement;
1357};
1358
1363public :
1367 Integer const Rank;
1371 CTrophyAchievement_CompetitionMatch * TrophyAchievement_CompetitionMatch;
1372};
1373
1378public :
1382 Integer const Rank;
1386 CTrophyAchievement_CompetitionRanking * TrophyAchievement_CompetitionRanking;
1387};
1388
1393public :
1397 Integer const Rank;
1401 CTrophyAchievement_LiveMatch * TrophyAchievement_LiveMatch;
1402};
1403
1408public :
1412 Integer const Level;
1416 Integer const PreviousLevel;
1420 CTrophyAchievement_SoloMedal * TrophyAchievement_SoloMedal;
1421};
1422
1427public :
1431 Integer const Rank;
1435 CTrophyAchievement_SoloRanking * TrophyAchievement_SoloRanking;
1436};
1437
1442public :
1446 Text const CompetitionId;
1450 Text const CompetitionMatchInfo;
1454 Text const CompetitionName;
1458 Text const CompetitionStage;
1462 Text const CompetitionStageStep;
1466 Text const CompetitionType;
1470 Text const ServerId;
1471};
1472
1477public :
1481 Text const CompetitionId;
1485 Text const CompetitionName;
1489 Text const CompetitionStage;
1493 Text const CompetitionStageStep;
1497 Text const CompetitionType;
1498};
1499
1504public :
1508 Integer const Duration;
1512 Text const GameMode;
1516 Text const GameModeCustomData;
1520 Boolean const IsOfficial;
1524 Text const ServerId;
1525};
1526
1531public :
1535 Text const SoloMedalAchievementType;
1536};
1537
1542public :
1546 Text const MapId;
1550 Text const SeasonId;
1554 Text const SoloRankingAchievementType;
1555};
1556
1564class CSmMode : public CMode {
1565public :
1569 enum ESmScoreSortOrder {
1570 TotalPoints,
1571 RoundPoints,
1572 EliminationsInflicted,
1573 EliminationsTaken,
1574 Respawns,
1575 DamageInflicted,
1576 DamageTaken,
1577 BestRace,
1578 BestLap,
1579 PrevRace,
1580 Name,
1581 LadderRank,
1582 };
1586 enum EWeapon {
1587 Laser,
1588 Nucleus,
1589 Arrow,
1590 Rocket,
1591 Missile,
1592 };
1596 enum EActionSlot {
1597 Slot_A,
1598 Slot_B,
1599 Slot_C,
1600 Slot_D,
1601 Slot_E,
1602 Slot_F,
1603 Slot_G,
1604 Slot_H,
1605 };
1609 enum EActionInput {
1610 Weapon,
1611 Secondary,
1612 Movement,
1613 QuickAccess1,
1614 QuickAccess2,
1615 QuickAccess3,
1616 QuickAccess4,
1617 QuickAccess5,
1618 QuickAccess6,
1619 QuickAccess7,
1620 QuickAccess8,
1621 QuickAccess9,
1622 QuickAccess0,
1623 Consumable1,
1624 Consumable2,
1625 None,
1626 };
1630 enum EGameplay {
1631 Default,
1632 Mp3Beta0,
1633 };
1637 enum ERespawnBehaviour {
1638 Custom,
1639 DoNothing,
1640 GiveUpBeforeFirstCheckpoint,
1641 AlwaysGiveUp,
1642 AlwaysRespawn,
1643 };
1647 enum ECheckpointBehaviour {
1648 Custom,
1649 Default,
1650 InfiniteLaps,
1651 };
1655 enum EGiveUpBehaviour {
1656 Custom,
1657 DoNothing,
1658 GiveUp,
1659 };
1663 enum EVehicleTransformType {
1664 Reset,
1665 CarSnow,
1666 CarRally,
1667 CarDesert,
1668 };
1672 Integer StartTime;
1676 Integer EndTime;
1680 Integer SpawnInvulnerabilityDuration;
1684 Integer UnspawnAnimDuration;
1688 Integer SpawnDelayDuration;
1692 CSmMode::ERespawnBehaviour RespawnBehaviour;
1696 CSmMode::ECheckpointBehaviour CheckpointBehaviour;
1700 CSmMode::EGiveUpBehaviour GiveUpBehaviour;
1704 Boolean GiveUpBehaviour_RespawnAfter;
1708 Boolean GiveUpBehaviour_SkipAfterFinishLine;
1716 Boolean UseMultiClans;
1720 Boolean UseClans;
1724 Boolean UseForcedClans;
1728 Boolean UsePvECollisions;
1732 Boolean UsePvPCollisions;
1736 Boolean UseGuns;
1740 Boolean UsePvPWeapons;
1744 Boolean UseInterractiveScreensIn3d;
1748 Boolean UseLaserVsBullets;
1752 Boolean UseLaserSkewering;
1756 Boolean UsePlayerTagging;
1760 Boolean UseBeaconsWithRecipients;
1764 Boolean UseAmmoBonusOnHit;
1768 Boolean UseSameWallJump;
1772 Boolean UseDefaultActionEvents;
1776 Boolean UseLaunchedCheckpoints;
1780 Boolean ReadonlyLaunchedCheckpoints;
1784 Boolean CharCanFly;
1788 Boolean UseProtectClanmates;
1792 Boolean UseAllies;
1796 Boolean UseStunts;
1800 Boolean CanReTriggerLatestWaypoint;
1808 Integer GameplayVersion;
1812 CSmMode::EGameplay Gameplay;
1816 Real Mood_GetTimeOfDay();
1820 Void Mood_SetTimeOfDay(Real Time01);
1824 Integer Mood_GetDayDuration();
1828 Boolean Mood_IsNight();
1832 Real OffZoneRadius;
1836 Real OffZoneRadiusSpeed;
1840 Ident OffZoneCenterLandmarkId;
1844 Integer const PlayersNbTotal;
1848 Integer const PlayersNbAlive;
1852 Integer const PlayersNbDead;
1856 Integer const ClansNbTotal;
1860 Integer const ClansNbAlive;
1864 Integer const ClansNbDead;
1868 Array<Integer> ClansNbPlayers;
1872 Array<Integer> ClansNbPlayersAlive;
1880 Array<CSmPlayer* const > BotPlayers;
1884 Array<CSmPlayer* const > Spectators;
1888 Array<CSmPlayer* const > AllPlayers;
1892 Array<CSmModeEvent* const > PendingEvents;
1896 CSmPlayer GetPlayer(CUIConfig UI);
1900 CSmPlayer GetPlayer(Text Login);
1908 Array<CSmMapLandmark* const > MapLandmarks;
1912 Array<CSmMapLandmark* const > MapLandmarks_PlayerSpawn;
1916 Array<CSmMapLandmark* const > MapLandmarks_Gauge;
1920 Array<CSmMapLandmark* const > MapLandmarks_Sector;
1924 Array<CSmMapLandmark* const > MapLandmarks_BotPath;
1928 Array<CSmMapLandmark* const > MapLandmarks_BotSpawn;
1932 Array<CSmMapLandmark* const > MapLandmarks_ObjectAnchor;
1936 Array<CSmMapLandmark* const > MapLandmarks_Gate;
1940 Array<CSmMapLandmark* const > MapLandmarks_Foundation;
1944 Integer UiScoresPointsLimit;
1952 Array<Integer> ClanScores;
1956 Void Save_Request(Text FileName);
1960 Void Load_Request(Text FileName);
1964 Boolean SetPlayer_DelayedIsFull(CSmPlayer Player);
2032 Void SetPlayer_Delayed_Cruise(CSmPlayer Player,Boolean Activate,Real CruiseSpeedValue);
2036 Void SetPlayer_Delayed_VehicleTransform(CSmPlayer Player,CSmMode::EVehicleTransformType VehicleTransformType);
2040 Void SetPlayerVehicle_ControlledByMode(CSmPlayer Player,Boolean Activate);
2044 Void SetPlayerVehicle_Accelerate(CSmPlayer Player,Boolean Activate);
2048 Void SetPlayerVehicle_TargetSpeedValue(CSmPlayer Player,Real TargetSpeedValue);
2052 Void SetPlayerVehicle_MaxSpeedValue(CSmPlayer Player,Real MaxSpeedValue);
2056 Void SetPlayerVehicle_BrakeValue(CSmPlayer Player,Real BrakeValue);
2060 Void SetPlayerVehicle_SteerValue(CSmPlayer Player,Real SteerValue);
2064 Void SetPlayerVehicle_ResetControlledModeValues(CSmPlayer Player);
2068 Void SetGameModeNameAndCustomData(Text GameModeName);
2072 Void SetGameModeNameAndCustomData(Text GameModeName,Text Leaderbord_CustomData);
2076 Void SetGameModeNameAndCustomData(Text GameModeName,Text Leaderbord_CustomData,Text GhostDriver_CustomData);
2080 Void SetClubLogoUrl(Text ClubLogoUrl);
2084 Void SetDecoImageUrl_DecalSponsor4x1(Text ImageUrl);
2088 Void SetDecoImageUrl_Screen16x9(Text ImageUrl);
2092 Void SetDecoImageUrl_Screen8x1(Text ImageUrl);
2096 Void SetDecoImageUrl_Screen16x1(Text ImageUrl);
2100 Void PassOn(CSmModeEvent Event);
2104 Void Discard(CSmModeEvent Event);
2108 Void SpawnPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CMapSpawn PlayerSpawn,Integer ActivationDate);
2112 Void SpawnPlayer(CSmPlayer Player,Integer ClanNum,CModeTurret Turret,Integer ActivationDate);
2116 Void SpawnPlayer(CSmPlayer Player,Integer ClanNum,CModeVehicle Vehicle,Integer ActivationDate);
2120 Void SpawnPlayer(CSmPlayer Player,Integer ClanNum,CModeVehicle Vehicle,Integer SlotIndex,Integer ActivationDate);
2124 Void SpawnBotPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CMapSpawn PlayerSpawn,Integer ActivationDate);
2128 Void SpawnBotPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CMapBotPath BotPath,Integer ActivationDate);
2132 Void SpawnBotPlayer(CSmPlayer Player,Integer ClanNum,Integer Armor,CMapBotSpawn BotSpawn,Integer ActivationDate);
2136 Void SpawnBotPlayer(CSmPlayer Player,CSmPlayer Owner,Integer Armor,Vec3 Offset,Integer ActivationDate);
2140 Void UnspawnPlayer(CSmPlayer Player);
2144 CSmMode::ESmScoreSortOrder const Scores_SortCriteria;
2148 Boolean Scores_AutoUpdateLadderRank;
2152 Boolean Scores_AutoUploadPersonalBests;
2156 Void Scores_SetSortCriteria(CSmMode::ESmScoreSortOrder Criteria);
2160 Void Scores_ComputeLadderRank(CSmMode::ESmScoreSortOrder Criteria);
2164 Void Scores_ClearAll();
2168 Void Score_ClearPrevRace(CSmScore Score);
2172 Void Score_ClearPrevLap(CSmScore Score);
2176 Void Score_Clear(CSmScore Score);
2180 Void SetPlayerClan(CSmPlayer Player,Integer ClanNum);
2184 Void SetPlayerWeapon(CSmPlayer Player,CSmMode::EWeapon DefaultWeapon,Boolean AutoSwitchWeapon);
2188 Void SetPlayerWeaponAvailable(CSmPlayer Player,CSmMode::EWeapon Weapon,Boolean Available);
2192 Void SetPlayerAllWeaponAvailable(CSmPlayer Player,Boolean Available);
2196 Void SetPlayerReloadAllWeapons(CSmPlayer Player,Boolean ReloadAllWeapons);
2200 Void SetPlayerAmmo(CSmPlayer Player,CSmMode::EWeapon Weapon,Integer Count);
2204 Integer GetPlayerAmmo(CSmPlayer Player,CSmMode::EWeapon Weapon);
2208 Void AddPlayerAmmo(CSmPlayer Player,CSmMode::EWeapon Weapon,Real DeltaCount);
2212 Void SetPlayerAmmoMax(CSmPlayer Player,CSmMode::EWeapon Weapon,Integer Count);
2216 Integer GetPlayerAmmoMax(CSmPlayer Player,CSmMode::EWeapon Weapon);
2220 Void Entity_AddArmor(CEntity Victim,Integer DeltaArmor,CEntity Shooter,Integer ShooterPoints);
2224 Void Entity_RemoveArmor(CEntity Victim,Integer DeltaArmor,CEntity Shooter,Integer ShooterPoints);
2228 Void Entity_TriggerTurbo(CEntity Target,Integer StartTime);
2232 Integer GetWeaponNum(CSmMode::EWeapon Weapon);
2236 Boolean CanRespawnPlayer(CSmPlayer Player);
2240 Void RespawnPlayer(CSmPlayer Player);
2244 Void RespawnPlayer(CSmPlayer Player,CMapWaypoint Waypoint);
2248 Void RespawnPlayer(CSmPlayer Player,CMapSpawn Spawn);
2252 Void GiveUpBehaviour_RespawnAfter_SetLandmark(CSmPlayer Player,CMapSpawn Spawn,Integer Date);
2260 CSmPlayer CreateBotPlayer(Ident ModelId,Integer ClanNum);
2264 Void DestroyBotPlayer(CSmPlayer BotPlayer);
2268 Void DestroyAllBotPlayers();
2272 Boolean Bots_AutoSpawn;
2276 Boolean Bots_AutoRespawn;
2280 Boolean Bots_AutoIgnoreBotEvents;
2292 Ident ActionGetModelId(Text ActionName);
2296 Void ActionLoad(CSmPlayer Player,CSmMode::EActionSlot ActionSlot,Ident ModelId);
2300 Void ActionLoad(CSmPlayer Player,CSmMode::EActionSlot ActionSlot,Ident ModelId,Boolean MeleeMode);
2304 Void ActionLoad(CModeVehicle Vehicle,Integer VehicleSlotIndex,CSmMode::EActionSlot ActionSlot,Ident ModelId);
2308 Void ActionLoad(CModeTurret Turret,CSmMode::EActionSlot ActionSlot,Ident ModelId);
2312 Integer Action_GetCooldown(CSmPlayer Player,CSmMode::EActionInput ActionInput);
2316 Integer Action_GetRemainingCooldown(CSmPlayer Player,CSmMode::EActionInput ActionInput);
2320 Void ActionBind(CSmPlayer Player,CSmMode::EActionSlot ActionSlot,CSmMode::EActionInput ActionInput);
2324 Void ActionUnBind(CSmPlayer Player,CSmMode::EActionInput ActionInput);
2328 Void ActionSetVariant1(CSmPlayer Player,CSmMode::EActionSlot ActionSlot,Integer ActionVariant);
2332 Void ActionSetVariant2(CSmPlayer Player,CSmMode::EActionSlot ActionSlot,Integer ActionVariant);
2336 Void ActionSetVariant3(CSmPlayer Player,CSmMode::EActionSlot ActionSlot,Integer ActionVariant);
2344 CSmObject ObjectCreate(Ident ModelId);
2348 Void ObjectDestroy(CSmObject Object);
2352 Void ObjectDestroyAll();
2356 Void RemoveShieldArmor(Integer VictimShieldId,Integer Damage);
2360 Void Replay_SaveAttackScore(CSmPlayer Player,Integer Score);
2364 Void Replay_SaveDefenseScore(CSmPlayer Player,Integer Score);
2368 Void Replay_SaveTeamScore(Integer Team,Integer Score);
2372 Void Replay_SavePlayerOfInterest(CSmPlayer Player);
2376 Void Replay_SaveWinner(CSmPlayer Player);
2380 Void Replay_SaveInterface();
2384 Void Player_BeginNewRace(CSmPlayer Player,Integer AbsoluteTime);
2388 Void Player_BeginNewLap(CSmPlayer Player,Integer RaceTime);
2392 Void Player_RemoveLastWaypointTime(CSmPlayer Player);
2396 Void Player_AddWaypointTime(CSmPlayer Player,Integer Time,CSmMapLandmark Landmark);
2400 Void Player_SetFinishTime(CSmPlayer Player,Integer Time,CSmMapLandmark Landmark);
2404 Void Player_ClearRaceWaypointTimes(CSmPlayer Player);
2408 Void Player_ClearLapWaypointTimes(CSmPlayer Player);
2412 Void Player_SetPlayerCurRaceAsScoreBestRace(CSmPlayer Player);
2416 Void Player_SetPlayerCurRaceAsScorePrevRace(CSmPlayer Player);
2420 Void Player_SetPlayerCurLapAsScoreBestLap(CSmPlayer Player);
2424 Void Player_SetPlayerCurLapAsScorePrevLap(CSmPlayer Player);
2428 Void Player_SetPlayerPrevLapAsScoreBestLap(CSmPlayer Player);
2432 Void Player_SetPlayerPrevLapAsScorePrevLap(CSmPlayer Player);
2440 Void Ghosts_SetStartTime(Integer StartTime);
2444 Void Ghosts_SetMaxAlpha(Real MaxAlpha);
2448 CGhost Ghost_RetrieveFromPlayer(CSmPlayer Player);
2452 CGhost Ghost_RetrieveFromPlayer(CSmPlayer Player,Boolean TruncateLaunchedCheckpointsRespawns);
2460 Void GhostRecorder_SetEnabled(CSmPlayer Player,Boolean Value);
2464 Void GhostRecorder_Ghosts_Select(CSmPlayer Player);
2468 Void GhostRecorder_Clear(CSmPlayer Player);
2472 Array<CGhost* const > GhostRecorder_Ghosts;
2476 CSmMapLandmark GhostDriver_Playlist_GetNextSpawn(CPlayer Player);
2477};
2478
2486class CSmMapType : public CMapType {
2487public :
2491 CSmMode * const Mode;
2495 Void AuthorTime_SetFromGhost(CGhost Ghost);
2499 Void SetAuthorTimeAndGhost(CGhost Ghost);
2503 Array<CSmPlayer* const > AllPlayers;
2508};
2509
2516class CSmAction : public CAction {
2517public :
2521 Integer const Now;
2525 Integer const Variant1;
2529 Integer const Variant2;
2533 Integer const Variant3;
2541 CSmPlayer * const Owner;
2545 CModeVehicle * const OwnerVehicle;
2549 Boolean const IsActive;
2553 Boolean const IsBound;
2561 Integer Energy;
2565 Integer EnergyMax;
2569 Integer EnergyCost;
2573 Boolean EnergyReload;
2577 Real AmmoGain;
2581 Ident State_EntityId1;
2585 Integer State_Integer1;
2589 Integer State_Integer2;
2593 Boolean State_Boolean1;
2597 Array<CSmActionEvent* const > PendingEvents;
2601 Boolean IsJumping;
2605 Boolean IsGliding;
2609 Boolean IsAttractor;
2613 Boolean IsFlying;
2617 Boolean IsSliding;
2621 Boolean IsRunning;
2625 Boolean IsFrozen;
2629 Boolean IsSneaking;
2633 Boolean IsFreeLooking;
2637 Boolean HasNoPlayerCollision;
2641 Void SendRulesEvent(Text Param1,Array<Text> Param2,CEntity Shooter,CEntity Victim);
2645 Ident Anim_GetModelId(Text ModelName);
2649 Ident Anim_PlayAtLocation(Ident AnimModelId,Vec3 Position,Vec3 Direction);
2653 Ident Anim_PlayOnPlayer(Ident AnimModelId,CSmPlayer Player);
2657 Void Anim_Stop(Ident AnimId);
2661 Ident Projectile_GetModelId(Text ModelName);
2665 Ident Projectile_CreateAtLocation(Ident ProjectileModelId,CSmPlayer PlayerToIgnore,Vec3 InitialPosition,Vec3 InitialDirection,Vec3 InitialVelocity);
2669 Ident Projectile_CreateOnPlayer(Ident ProjectileModelId,CSmPlayer Shooter);
2673 Integer Cooldown;
2677 Boolean Cooldown_IsReady();
2681 Void Cooldown_Start();
2685 Ident Shield_CreateAtLocation(Vec3 Position,Vec3 Direction);
2689 Ident Shield_CreateOnPlayer(CSmPlayer ShieldOwner);
2693 Void Shield_Destroy(Ident ShieldId);
2697 Boolean Shield_Exists(Ident ShieldId);
2701 Integer Shield_GetArmor(Ident ShieldId);
2705 Void Shield_SetArmor(Ident ShieldId,Integer ShieldArmor);
2709 Boolean Shield_GetIsActive(Ident ShieldId);
2713 Void Shield_SetIsActive(Ident ShieldId,Boolean ShieldIsActive);
2717 Integer Shield_GetArmorMax(Ident ShieldId);
2721 Integer Shield_GetTickReload(Ident ShieldId);
2725 Integer Shield_GetCooldown(Ident ShieldId);
2729 Void Vehicle_TriggerTurbo();
2733 Void Vehicle_TriggerTurboBrake();
2737 Boolean Focus_Request();
2741 Void Focus_Release();
2745 Boolean const Focus_Active;
2749 Boolean const Trigger0;
2753 Boolean const Trigger1;
2757 Boolean const Trigger2;
2761 Boolean const Trigger3;
2765 Boolean const Trigger4;
2769 Boolean const Trigger5;
2773 Boolean const Trigger6;
2777 Boolean const Trigger7;
2781 Boolean const Trigger8;
2785 Boolean const Trigger9;
2789 Boolean const Trigger10;
2793 Boolean const Trigger11;
2797 Boolean const Trigger12;
2801 Boolean const Trigger13;
2805 Integer Focused_Scroll;
2809 Integer Focused_Scroll_Max;
2810};
2811
2820public :
2824 Integer ArenaNow;
2848 Array< const Integer> ClanScores;
2852 Boolean HideResumePlayingButton;
2864 Array<CSmMapLandmark const * const > MapLandmarks_PlayerSpawn;
2868 Array<CSmMapLandmark const * const > MapLandmarks_Gauge;
2872 Array<CSmMapLandmark const * const > MapLandmarks_Sector;
2876 Array<CSmMapLandmark const * const > MapLandmarks_BotPath;
2880 Array<CSmMapLandmark const * const > MapLandmarks_ObjectAnchor;
2884 Array<CSmMapLandmark const * const > MapLandmarks_Gate;
2888 Array<CSmMapLandmark const * const > MapLandmarks_Foundation;
2889};
2890
2895public :
2899 Integer ArenaNow;
2903 CSmPlayer const * const InputPlayer;
2907 CSmPlayer const * const GUIPlayer;
2931 Array<CSmMapLandmark const * const > MapLandmarks_PlayerSpawn;
2935 Array<CSmMapLandmark const * const > MapLandmarks_Gauge;
2939 Array<CSmMapLandmark const * const > MapLandmarks_Sector;
2943 Array<CSmMapLandmark const * const > MapLandmarks_BotPath;
2947 Array<CSmMapLandmark const * const > MapLandmarks_ObjectAnchor;
2951 Array<CSmMapLandmark const * const > MapLandmarks_Gate;
2955 Array<CSmMapLandmark const * const > MapLandmarks_Foundation;
2956};
2957
2962public :
2966 Integer TeamLevel;
2970 Integer Limit;
2971};
2972
2987
2998
3003public :
3007 CGhost * Ghost;
3008};
3009
3014public :
3018 Boolean const NewValue;
3019};
3020
3025public :
3029 CGameUserVoiceChat * const Sender;
3033 CGameUserVoiceChat * const Destination;
3037 Text const Message;
3041 Text const Lang_BCP47;
3042};
3043
3048public :
3049};
3050
3055public :
3059 CGameUserVoiceChat * const User;
3063 Boolean const NewValue;
3067 Boolean const ChangePending;
3068};
3069
3074public :
3078 CGameUserVoiceChat * const User;
3082 Boolean const NewValue;
3083};
3084
3089public :
3093 CGameUserVoiceChat * const User;
3097 Boolean const NewValue;
3098};
3099
3103class CVoiceChatEvent : public CNod {
3104public :
3105};
3106
3111public :
3115 Text const SessionId;
3119 Boolean const IsFirstPartySession;
3123 Integer const Context;
3124};
3125
3130public :
3134 Text const Reason;
3135};
3136
3141public :
3142};
3143
3148public :
3149};
3150
3155public :
3156};
3157
3162public :
3163};
3164
3169public :
3170};
3171
3176public :
3177};
3178
3183public :
3184};
3185
3190public :
3194 Text const ServerId;
3198 Boolean const IsSpectator;
3199};
3200
3205public :
3206};
3207
3212public :
3213};
3214
3219public :
3220};
3221
3226public :
3227};
3228
3233public :
3237 CChatEntry * Entry;
3238};
3239
3244public :
3245};
3246
3251public :
3252};
3253
3258public :
3262 SConstStringInt * const Text;
3266 SConstString * const SenderLogin;
3270 SConstStringInt * const SenderDisplayName;
3274 SConstStringInt * const SenderFullDisplayName;
3278 SConstStringInt * const SenderFullDisplayName_ForTTS;
3282 SConstStringInt * const SenderTeamColorText;
3286 Boolean const IsSystemMessage;
3290 EChatScope const ChatScope;
3291};
3292
3297public :
3305 Integer Window_Size;
3309 Integer Window_Offset;
3313 Integer const Window_OffsetMax;
3317 Array<CChatEvent*> PendingEvents;
3318};
3319
3324public :
3328 Array<CChatHistory*> Histories;
3332 CChatHistory History_Create(Text Filter,Integer MaxSize);
3336 Void History_Destroy(CChatHistory History);
3337};
3338
3343public :
3347 enum EStuntName {
3348 None,
3349 BasicJump,
3350 Flip,
3351 Backflip,
3352 Spin,
3353 Aerial,
3354 AlleyOop,
3355 Roll,
3356 Corkscrew,
3357 SpinOff,
3358 Rodeo,
3359 FlipFlap,
3360 Twister,
3361 FreeStyle,
3362 SpinningChaos,
3363 FlippingMix,
3364 RollingMadness,
3365 };
3369 CStuntFigure::EStuntName Name;
3385 Real Factor;
3389 Boolean StraightLanding;
3393 Boolean ReverseLanding;
3397 Boolean PerfectLanding;
3401 Boolean MasterJump;
3405 Boolean MasterLanding;
3409 Boolean EpicLanding;
3413 Boolean Wreck;
3414};
3415
3420public :
3424 Integer LatestFigureTime;
3428 CStuntFigure * LatestFigure;
3432 Boolean IsInFigure;
3436 Boolean IsNoAirControl;
3440 Boolean IsEpicAirControl;
3444 Boolean IsMasterAirControl;
3456 Integer const TimeLeftForStuntCombo;
3460 Integer const TimeElapsedSinceLastStunt;
3461};
3462
3466class CNod {
3467public :
3471 Ident const Id;
3472};
3473
3482public :
3486 CEditorModule * const ModuleEditor;
3490 CEditorMesh * const MeshEditor;
3494 CEditorEditor * const EditorEditor;
3498 CEditorMediaTracker * const MediaTracker;
3502 CEditorSkin * const SkinEditor;
3506 Text Binding_GetShortcut(Text ContextName,Text BindingName);
3507};
3508
3517public :
3525 CTitleControl * const TitleControl;
3526};
3527
3536public :
3540 CMapEditorPlugin * const Editor;
3541};
3542
3550class CMlStation : public CMlScript {
3551public :
3559 CStation * const Station;
3563 Void EnterStation();
3564};
3565
3573class CMlBrowser : public CMlScript {
3574public :
3582 CMap * const CurMap;
3586 Void ShowCurMapCard();
3590 Boolean const IsInBrowser;
3594 Void BrowserBack();
3598 Void BrowserQuit();
3602 Void BrowserHome();
3606 Void BrowserReload();
3610 Text BrowserFocusedFrameId;
3611};
3612
3621public :
3625 CMap * const CurMap;
3629 Void ShowCurMapCard();
3630};
3631
3639class CMlPage : public CNod {
3640public :
3644 CMlFrame * const MainFrame;
3648 CMlControl GetFirstChild(Text ControlId);
3652 CMlControl * const FocusedControl;
3656 Boolean LinksInhibited;
3660 Void GetClassChildren(Text Class,CMlFrame Frame,Boolean Recursive);
3664 Array<CMlControl* const > GetClassChildren_Result;
3668 Void ScrollToControl(CMlControl Control);
3669};
3670
3679class CUser : public CNod {
3680public :
3684 enum EEchelon {
3685 None,
3686 Bronze1,
3687 Bronze2,
3688 Bronze3,
3689 Silver1,
3690 Silver2,
3691 Silver3,
3692 Gold1,
3693 Gold2,
3694 Gold3,
3695 };
3699 enum ETagType {
3700 Bronze,
3701 Silver,
3702 Gold,
3703 Nadeo,
3704 };
3708 enum EStereoDisplayMode {
3709 None,
3710 Stereo,
3711 HMD,
3712 };
3716 Text const Login;
3720 Text const WebServicesUserId;
3724 Text const Name;
3728 Boolean const IsFirstPartyDisplayName;
3732 Text const AvatarUrl;
3736 Text const ZonePath;
3740 Text const ZoneFlagUrl;
3744 Text const CountryFlagUrl;
3748 Text const CountryPath;
3752 Array<Text> ZoneIdPath;
3756 Text const Language;
3760 Text const Description;
3764 Vec3 const Color;
3768 Text const ClubLink;
3772 Text const Trigram;
3776 Text const BroadcastTVLogin;
3780 Text const SteamUserId;
3784 Integer const FameStars;
3788 CUser::EEchelon const Echelon;
3792 Integer const NextEchelonPercent;
3796 Boolean const IsBeginner;
3800 Integer const LadderRank;
3804 Integer const LadderTotal;
3808 Real const LadderPoints;
3812 Text const LadderZoneName;
3816 Text const LadderZoneFlagUrl;
3820 Real const ReferenceScore;
3824 Boolean const IsFakeUser;
3828 Array<Integer> Tags_Favored_Indices;
3832 Array<Text> Tags_Id;
3836 Array<CUser::ETagType> Tags_Type;
3840 Array<Text> Tags_Comments;
3844 Array<Text> Tags_Deliverer;
3848 Text const ClubTag;
3852 CUser::EStereoDisplayMode const StereoDisplayMode;
3856 Boolean const ColorblindModeEnabled;
3860 Boolean HackCamHmdDisabled;
3864 Text const AvatarDisplayName;
3868 Text const HornDisplayName;
3872 Text const Model_CarSport_SkinName;
3876 Text const Model_CarSport_SkinUrl;
3880 Text const Model_CharacterPilot_SkinName;
3884 Text const Model_CharacterPilot_SkinUrl;
3888 Text const Prestige_SkinOptions;
3892 Text const Character_SkinOptions;
3896 CGameUserVoiceChat * const VoiceChat;
3900 Boolean const IsConnectedToMasterServer;
3904 Array<Text> AlliesConnected;
3905};
3906
3914class CTitle : public CNod {
3915public :
3919 Text const TitleId;
3923 Text const AuthorLogin;
3927 Text const AuthorName;
3931 Text const Name;
3935 Text const Desc;
3939 Text const InfoUrl;
3943 Text const DownloadUrl;
3947 Text const TitleVersion;
3951 Text const MakerTitleId;
3955 Text const BaseTitleId;
3956};
3957
3965public :
3969 enum Type {
3970 KeyPress,
3971 MouseClick,
3972 MouseRightClick,
3973 MouseOver,
3974 MouseOut,
3975 EntrySubmit,
3976 MenuNavigation,
3977 PluginCustomEvent,
3978 };
3982 enum EMenuNavAction {
3983 Up,
3984 Right,
3985 Left,
3986 Down,
3987 Select,
3988 Cancel,
3989 PageUp,
3990 PageDown,
3991 AppMenu,
3992 Action1,
3993 Action2,
3994 Action3,
3995 Action4,
3996 ScrollUp,
3997 ScrollDown,
3998 };
4002 CMlScriptEvent::Type const Type;
4006 Integer const KeyCode;
4010 Text const KeyName;
4014 Text const CharPressed;
4018 Text const ControlId;
4022 CMlControl * const Control;
4026 CMlScriptEvent::EMenuNavAction const MenuNavAction;
4030 Boolean const IsActionAutoRepeat;
4034 Text const CustomEventType;
4038 Array<Text> CustomEventData;
4039};
4040
4047class CMlControl : public CNod {
4048public :
4052 enum AlignHorizontal {
4053 Left,
4054 HCenter,
4055 Right,
4056 None,
4057 };
4061 enum AlignVertical {
4062 Top,
4063 VCenter,
4064 Bottom,
4065 None,
4066 VCenter2,
4067 };
4071 CMlFrame * const Parent;
4075 Text const ControlId;
4079 Boolean HasClass(Text Class);
4083 Vec2 Size;
4087 CMlControl::AlignHorizontal HorizontalAlign;
4091 CMlControl::AlignVertical VerticalAlign;
4095 Boolean Visible;
4099 Vec2 RelativePosition_V3;
4103 Real ZIndex;
4107 Real RelativeScale;
4111 Real RelativeRotation;
4115 Vec2 const AbsolutePosition_V3;
4119 Real const AbsoluteScale;
4123 Real const AbsoluteRotation;
4127 Boolean DataAttributeExists(Text DataName);
4131 Text DataAttributeGet(Text DataName);
4135 Void DataAttributeSet(Text DataName,Text DataValue);
4139 Text ToolTip;
4143 Void Show();
4147 Void Hide();
4151 Void Focus();
4155 Void ScriptEvents_Disable();
4159 Void ScriptEvents_Restore();
4163 Boolean const IsFocused;
4164};
4165
4169class CParsingManager : public CNod {
4170public :
4174 CParsingDocument Create(Text Contents);
4178 CParsingDocument Create(Text Contents,Boolean GenerateText,Boolean GenerateTextRaw,Boolean GenerateTextResursive);
4182 Void Destroy(CParsingDocument Document);
4190 CParsingDocument Parse_Xml(Text Contents,Boolean GenerateText,Boolean GenerateTextRaw,Boolean GenerateTextResursive);
4194 Void Parse_Destroy(CParsingDocument Document);
4198 Integer DocumentsSlotsLimit;
4206 Ident Compose_Start_Xml(Boolean Compact);
4210 Ident Compose_Start_Json(Boolean Compact);
4214 Void Compose_End(Ident ComposerId);
4218 Void Compose_Destroy(Ident ComposerId);
4222 Void Compose_Node_Open(Ident ComposerId,Text Name);
4226 Void Compose_Node_Close(Ident ComposerId);
4230 Void Compose_Array_Open(Ident ComposerId,Text Name);
4234 Void Compose_Array_Close(Ident ComposerId);
4238 Void Compose_Attribute(Ident ComposerId,Text Name,Text Value);
4242 Void Compose_Attribute(Ident ComposerId,Text Name,Integer Value);
4246 Void Compose_Attribute(Ident ComposerId,Text Name,Real Value);
4250 Void Compose_Attribute(Ident ComposerId,Text Name,Boolean Value);
4254 Void Compose_Value(Ident ComposerId,Text Name,Text Value);
4258 Text Compose_GetResult(Ident ComposerId);
4259};
4260
4264class CHttpManager : public CNod {
4265public :
4273 CHttpRequest CreateGet(Text Url,Boolean UseCache);
4277 CHttpRequest CreateGet(Text Url,Boolean UseCache,Text AdditionalHeaders);
4281 CHttpRequest CreatePost(Text Url,Text Resource);
4285 CHttpRequest CreatePost(Text Url,Text Resource,Text AdditionalHeaders);
4289 CHttpRequest CreatePostFile(Text Url,Text FileName,Text AdditionalHeaders);
4293 Void Destroy(CHttpRequest Request);
4297 Boolean IsValidUrl(Text Url);
4305 Integer const SlotsAvailable;
4309 Array<CHttpEvent* const > PendingEvents;
4313 Boolean AutomaticHeaders_Timezone;
4314};
4315
4319class CVideoManager : public CNod {
4320public :
4324 CVideo CreateVideo(Text Url,Boolean IsLooping,Boolean AutoProcessing);
4328 CVideo CreateVideo(Text Url,Boolean IsLooping,Boolean AutoProcessing,Boolean UseMipMap);
4332 Void DestroyVideo(CVideo Video);
4336 Array<CVideo* const > Videos;
4337};
4338
4342class CAudioManager : public CNod {
4343public :
4347 enum ELibSound {
4348 Alert,
4349 ShowDialog,
4350 HideDialog,
4351 ShowMenu,
4352 HideMenu,
4353 Focus,
4354 Valid,
4355 Start,
4356 Countdown,
4357 Victory,
4358 ScoreIncrease,
4359 Checkpoint,
4360 };
4364 CAudioSource CreateSound(Text Url);
4368 CAudioSource CreateSound(Text Url,Real VolumedB,Boolean IsMusic,Boolean IsLooping,Boolean IsSpatialized);
4372 Void DestroySound(CAudioSource Sound);
4380 CAudioSourceMusic CreateMusic(Text Url);
4384 Void DestroyMusic(CAudioSourceMusic Music);
4388 Void PlaySoundEvent(CAudioSource Sound,Real VolumedB);
4392 Void PlaySoundEvent(Text Url,Real VolumedB);
4396 Void PlaySoundEvent(CAudioManager::ELibSound Sound,Integer SoundVariant,Real VolumedB);
4400 Void PlaySoundEvent(CAudioSource Sound,Real VolumedB,Integer Delay);
4404 Void PlaySoundEvent(Text Url,Real VolumedB,Integer Delay);
4408 Void PlaySoundEvent(CAudioManager::ELibSound Sound,Integer SoundVariant,Real VolumedB,Integer Delay);
4412 Void PlaySoundEvent(CAudioSource Sound,Real VolumedB,Vec3 PanRadiusLfe);
4416 Void PlaySoundEvent(Text Url,Real VolumedB,Vec3 PanRadiusLfe);
4420 Void PlaySoundEvent(CAudioSource Sound,Real VolumedB,Vec3 PanRadiusLfe,Integer Delay);
4424 Void PlaySoundEvent(Text Url,Real VolumedB,Vec3 PanRadiusLfe,Integer Delay);
4428 Void ClearAllDelayedSoundsEvents();
4432 Boolean ForceEnableMusic;
4436 Real LimitMusicVolumedB;
4440 Real LimitSceneSoundVolumedB;
4444 Real LimitUiSoundVolumedB;
4445};
4446
4450class CInputManager : public CNod {
4451public :
4455 enum EButton {
4456 Left,
4457 Right,
4458 Up,
4459 Down,
4460 A,
4461 B,
4462 X,
4463 Y,
4464 L1,
4465 R1,
4466 LeftStick,
4467 RightStick,
4468 Menu,
4469 View,
4470 LeftStick_Left,
4471 LeftStick_Right,
4472 LeftStick_Up,
4473 LeftStick_Down,
4474 RightStick_Left,
4475 RightStick_Right,
4476 RightStick_Up,
4477 RightStick_Down,
4478 L2,
4479 R2,
4480 None,
4481 };
4485 enum EPadType {
4486 Keyboard,
4487 Mouse,
4488 Generic,
4489 XBox,
4490 PlayStation,
4491 Vive,
4492 };
4496 Array<CInputEvent* const > PendingEvents;
4500 Integer const Now;
4504 Integer const Period;
4512 Vec2 const MousePos;
4516 Vec2 const MouseKineticScrollVel;
4520 Boolean const MouseLeftButton;
4524 Boolean const MouseRightButton;
4528 Boolean const MouseMiddleButton;
4532 Array<Vec2> TouchPoints_Cur;
4536 Array<Vec2> TouchPoints_Init;
4540 Text GetPadButtonPlaygroundBinding(CInputPad Pad,CInputManager::EButton Button);
4544 Text GetPadButtonCurrentBinding(CInputPad Pad,CInputManager::EButton Button);
4548 Text GetActionBindingRaw(CInputPad Pad,Text ActionMap,Text ActionId);
4552 Text GetActionBinding(CInputPad Pad,Text ActionMap,Text ActionId);
4556 Text GetActionDisplayName(Text ActionMap,Text ActionId);
4560 Boolean const JapanStylePadButtons;
4564 Boolean ExclusiveMode;
4568 Boolean IsKeyPressed(Integer KeyCode);
4572 CInputPad * const LatestActivePad;
4576 CInputManager::EPadType const LatestActivePadType;
4584 Integer const TimeSinceLatestMouseActivity;
4588 Integer const TimeSinceLatestTouchActivity;
4592 Integer const TimeSinceLatestKeyboardActivity;
4596 Integer const TimeSinceLatestPadActivity;
4597};
4598
4602class CDataFileMgr : public CNod {
4603public :
4607 enum EMediaType {
4608 Image,
4609 Sound,
4610 Script,
4611 MatchSettings,
4612 Module,
4613 Skins,
4614 ItemCollection,
4615 };
4635 CTaskResult_NSItemCollection ItemCollection_Create(Ident UserId,Text ClubId,Text DisplayName,Text FileName);
4639 CTaskResult_NSItemCollection ItemCollection_CreateVersion(Ident UserId,Text ItemCollectionId,Text FileName);
4643 CTaskResult_NSItemCollection ItemCollection_Get(Ident UserId,Text ItemCollectionId);
4647 CTaskResult_NSItemCollectionList ItemCollection_GetList(Ident UserId,Array<Text> ItemCollectionIdList);
4651 CTaskResult_NSItemCollectionList ItemCollection_GetListByUser(Ident UserId,Text WebServicesUserId);
4655 CTaskResult_NSItemCollection ItemCollection_SetActivityId(Ident UserId,Text ItemCollectionId,Text ActivityId);
4659 CTaskResult_NSItemCollection ItemCollection_Update(Ident UserId,Text ItemCollectionId,Text DisplayName);
4663 CTaskResult ItemCollection_AddFavorite(Ident UserId,Text ItemCollectionId);
4667 CTaskResult_NSItemCollectionList ItemCollection_GetFavoriteList(Ident UserId);
4671 CTaskResult ItemCollection_RemoveFavorite(Ident UserId,Text ItemCollectionId);
4675 Void Map_RefreshFromDisk();
4683 CTaskResult_MapList Map_GetGameList(Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4687 CTaskResult_MapList Map_GetFilteredGameList(Integer Scope,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4691 CGhost Map_GetAuthorGhost(CMap Map);
4695 CTaskResult_NSMap Map_NadeoServices_Get(Ident UserId,Text MapId);
4699 CTaskResult_NSMap Map_NadeoServices_GetFromUid(Ident UserId,Text MapUid);
4703 CTaskResult_NSMapList Map_NadeoServices_GetList(Ident UserId,Array<Text> MapIdList);
4707 CTaskResult_NSMapList Map_NadeoServices_GetListFromUid(Ident UserId,Array<Text> MapUidList);
4711 CTaskResult_NSMapList Map_NadeoServices_GetListFromUser(Ident UserId,Text WebServicesUserId);
4715 Integer Map_NadeoServices_GetVote(Ident UserId,Text MapUid);
4719 CTaskResult_NSMap Map_NadeoServices_Register(Ident UserId,Text MapUid);
4723 Void Map_NadeoServices_Vote(Ident UserId,Text MapUid,Integer Vote);
4727 CTaskResult_NSSkin Skin_NadeoServices_Get(Ident UserId,Text SkinId);
4731 CTaskResult_NSSkin Skin_NadeoServices_GetFromChecksum(Ident UserId,Text SkinChecksum);
4735 CTaskResult_NSSkinList Skin_NadeoServices_GetList(Ident UserId,Array<Text> SkinIdList);
4739 CTaskResult_NSSkinList Skin_NadeoServices_GetListFromChecksum(Ident UserId,Array<Text> SkinChecksumList);
4743 CTaskResult_NSSkinList Skin_NadeoServices_GetListFromUser(Ident UserId,Text WebServicesUserId);
4747 CTaskResult_NSSkin Skin_NadeoServices_Register(Ident UserId,Text SkinDisplayName,Text SkinFileName);
4751 CTaskResult AccountSkin_NadeoServices_AddFavorite(Ident UserId,Text SkinId);
4755 CTaskResult_NSSkinList AccountSkin_NadeoServices_GetFavoriteList(Ident UserId);
4759 CTaskResult_NSSkinList AccountSkin_NadeoServices_GetList(Ident UserId);
4763 CTaskResult_NSSkinList AccountSkin_NadeoServices_GetListForUser(Ident UserId,Text WebServicesUserId);
4767 CTaskResult AccountSkin_NadeoServices_RemoveFavorite(Ident UserId,Text SkinId);
4771 CTaskResult_NSSkin AccountSkin_NadeoServices_Set(Ident UserId,Text SkinId);
4775 CTaskResult AccountSkin_NadeoServices_Unset(Ident UserId,Text SkinType);
4787 CTaskResult_Ghost Ghost_Download(Text FileName,Text Url);
4791 CTaskResult Ghost_Upload(Text Url,CGhost Ghost,Text AdditionalHeaders);
4795 Void Replay_RefreshFromDisk();
4803 CTaskResult_ReplayList Replay_GetGameList(Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4807 CTaskResult_ReplayList Replay_GetFilteredGameList(Integer Scope,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4819 CTaskResult Replay_Author_Save(CMap Map,CGhost Ghost);
4823 CTaskResult_FileList Media_GetGameList(CDataFileMgr::EMediaType Type,Text Path,Boolean Flatten);
4827 CTaskResult_FileList Media_GetGameList(CDataFileMgr::EMediaType Type,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4831 CTaskResult_FileList Media_GetFilteredGameList(CDataFileMgr::EMediaType Type,Integer Scope,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4835 Void Media_RefreshFromDisk(CDataFileMgr::EMediaType Type,Integer Scope);
4839 CTaskResult_GameModeList GameMode_GetGameList(Integer Scope,Text Path,Boolean Flatten);
4843 CTaskResult Pack_DownloadOrUpdate(Text DisplayName,Text Url);
4847 CTaskResult UserSave_DeleteFile(Text Path);
4856};
4857
4861class CScoreMgr : public CNod {
4862public :
4882 CTaskResult Map_SetNewRecord_v2(Ident UserId,Text MapUid,Text GameMode,Text GameModeCustomData,CGhost Ghost);
4886 Integer Map_GetRecord_v2(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4890 Void Map_GetRecordFullScore(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData,Integer Time,Integer Points,Integer RespawnCount);
4894 CTaskResult_Ghost Map_GetRecordGhost_v2(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4898 Integer Map_GetMedal(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4902 Integer Map_GetMultiAsyncLevelRecord_v2(Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData,Integer MultiAsyncLevel);
4906 CTaskResult_Ghost Map_GetMultiAsyncLevelRecordGhost_v2(Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData,Integer MultiAsyncLevel);
4910 CTaskResult_MapRecordList Map_GetPlayerListRecordList(Ident UserId,Array<Text> WebServicesUserIdList,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4914 CTaskResult Map_LoadPBScoreList(Ident UserId,Array<Text> MapUidList,Text GameMode,Text GameModeCustomData);
4918 CTaskResult_Season Season_Create(Ident UserId,Text SeasonName,Text GameMode,Text GameModeCustomData,Text MapRecordType,Integer StartTimeStamp,Integer EndTimeStamp,Array<Text> MapUidList);
4922 CTaskResult_Season Season_Update(Ident UserId,Text SeasonId,Text SeasonName,Text GameMode,Text GameModeCustomData,Text MapRecordType,Integer StartTimeStamp,Integer EndTimeStamp,Array<Text> MapUidList);
4926 CTaskResult_Season Season_AddMapList(Ident UserId,Text SeasonId,Array<Text> MapUidList);
4930 CTaskResult_Season Season_RemoveMapList(Ident UserId,Text SeasonId,Array<Text> MapUidList);
4971};
4972
4976class CRankingsZoneMgr : public CNod {
4977public :
4981 Array<CTaskResult* const > TaskResults;
4985 Void TaskResult_Release(Ident TaskId);
4989 Void GetPathAndName(Text ZoneFullPath,Text ZonePath,Text ZoneName);
4993 CTaskResult_ZoneList GetZoneList(Array<Text> ZoneIdList);
4997 CTaskResult_ZoneList GetChildZoneList(Text ZoneFullPath);
5001 CTaskResult_UserZoneList RetrieveUserZoneList(Ident UserId,Array<Text> WebServicesUserIdList);
5005 CTaskResult SetUserZone(Ident UserId,Text ZoneFullPath);
5006};
5007
5011class CUserV2Manager : public CNod {
5012public :
5016 enum ECrossPlayState {
5017 Unknown,
5018 Disabled,
5019 Enabled,
5020 };
5024 enum EPrestigeMode {
5025 Unknown,
5026 Ranked,
5027 Royal,
5028 Season,
5029 };
5033 CUserV2Profile * const MainUserProfile;
5037 Array<CTaskResult* const > TaskResults;
5041 Void TaskResult_Release(Ident TaskId);
5045 CTaskResult TaskError_ShowSystemDialog(Ident UserId,Text ErrorCode);
5053 Text FindDisplayName(Text WebServicesUserId,Boolean IsFirstPartyDisplayName);
5057 CMasterServerUser * const MainUserWebServicesInfo;
5061 Text ResolveURLShorcut(Text ShortCutId);
5065 CMasterServerUser FindWebServicesUserInfo(Ident UserId);
5069 CTaskResult CheckNetworkAvailability(Ident UserId);
5073 Boolean const IsNetworkAvailable;
5077 CTaskResult_Connect ConnectUser(Ident UserId);
5081 CTaskResult_Connect ConnectUser(Ident UserId,Boolean ForceUbisoftConnectOverlay);
5085 CTaskResult ConnectUser(Ident UserId,Boolean ForceUbisoftConnectOverlay,Boolean OfflineMode);
5089 CTaskResult Commerce_ShowPrimaryStore(Ident UserId);
5093 CTaskResult_Bool CrossPlay_IsEnabled(Ident UserId);
5097 Boolean CrossPlay_Setting_GetEnabled(Ident UserId);
5101 Void CrossPlay_Setting_SetEnabled(Ident UserId,Boolean Value);
5105 CUserV2Manager::ECrossPlayState CrossPlay_V2_IsEnabled(Ident UserId);
5109 Void CrossPlay_V2_SetEnabled(Ident UserId,Boolean Enabled);
5113 Boolean Blocklist_CanViewUGC(Ident UserId,Text WebServicesUserId);
5117 Integer Friend_GetLastChangeIndex(Ident UserId);
5121 CTaskResult_FriendList Friend_GetList(Ident UserId);
5125 CTaskResult_Session_Get LiveSession_GetInfo(Ident UserId,Text SessionId);
5129 CTaskResult_UserNewsList News_GetProfileNewsList(Ident UserId);
5133 CTaskResult_UserNewsList News_GetSpaceNewsList(Ident UserId);
5137 CTaskResult News_OpenLink(Ident UserId,Text Type,Text Param);
5141 CTaskResult_UserPrestigeList Prestige_GetAccountPrestigeList(Ident UserId);
5145 CTaskResult_UserPrestige Prestige_GetCurrentAccountPrestige(Ident UserId);
5149 CTaskResult_UserPrestige Prestige_GetCurrentAccountPrestigeForUser(Ident UserId,Text WebServicesUserId);
5153 CTaskResult_PrestigeList Prestige_GetPrestigeList(Ident UserId,CUserV2Manager::EPrestigeMode Mode,Integer Year,Text CategoryType);
5157 CTaskResult_UserPrestige Prestige_SetCurrentAccountPrestige(Ident UserId,Text PrestigeId);
5161 CTaskResult_UserPrestige Prestige_ResetCurrentAccountPrestige(Ident UserId);
5165 CTaskResult_Squad Squad_AcceptInvitation(Ident UserId,Text SquadId);
5169 CTaskResult_Squad Squad_CancelInvitation(Ident UserId,Text SquadId,Text WebServicesUserId);
5173 CTaskResult_Squad Squad_Create(Ident UserId,Text SquadName,Integer Size);
5177 CTaskResult_Squad Squad_Create(Ident UserId,Text SquadName,Integer Size,Text Type);
5181 CTaskResult_Squad Squad_DeclineInvitation(Ident UserId,Text SquadId);
5185 CTaskResult_Squad Squad_Get(Ident UserId,Text SquadId);
5189 CTaskResult_Squad Squad_GetCurrent(Ident UserId);
5193 CTaskResult_Squad Squad_Invite(Ident UserId,Text SquadId,Text WebServicesUserId);
5197 CTaskResult Squad_JoinSession(Ident UserId,Text SessionId,Boolean IsFirstPartySession);
5201 CTaskResult_Squad Squad_Leave(Ident UserId,Text SquadId);
5205 CTaskResult_Squad Squad_RemoveMember(Ident UserId,Text SquadId,Text WebServicesUserId);
5209 CTaskResult_Squad Squad_SetLeader(Ident UserId,Text SquadId,Text WebServicesUserId);
5213 Void Squad_SetLocked(Ident UserId,Text SquadId,Boolean Locked);
5217 Void Squad_SetType(Ident UserId,Text SquadId,Text Type);
5221 Void Squad_SetEnabled(Ident UserId,Boolean Enabled);
5225 Array<CVoiceChatEvent* const > VoiceChat_Events;
5229 Boolean const VoiceChat_DisplayUI;
5233 Boolean VoiceChat_Mute_Myself;
5237 Void VoiceChat_MuteAll();
5241 Void VoiceChat_UnmuteAll();
5245 Array<CGameUserVoiceChat* const > VoiceChat_Users;
5249 Array<CGameUserVoiceChat* const > VoiceChat_Users_Local;
5253 Array<CGameUserVoiceChat* const > VoiceChat_Users_Remote;
5261 Array<CGameUserVoiceChat* const > VoiceChat_Users_Muted;
5265 Array<CGameUserVoiceChat* const > VoiceChat_Users_Remote_Muted;
5269 CGameUserVoiceChat VoiceChat_FindUserFromWebServicesUserId(Text WebServicesUserId);
5273 Integer Subscription_GetEndTimeStamp(Ident UserId,Text SubscriptionName);
5277 Boolean Subscription_IsRefreshingInfo(Ident UserId);
5281 CTaskResult_StringInt Tag_GetClubTag(Ident UserId);
5285 CTaskResult_ClubTagList Tag_GetClubTagList(Ident UserId,Array<Text> WebServicesUserIdList);
5289 CTaskResult Tag_SetClubTag(Ident UserId,Text ClubTag);
5290};
5291
5295class CAnimManager : public CNod {
5296public :
5300 enum EAnimManagerEasing {
5301 Linear,
5302 QuadIn,
5303 QuadOut,
5304 QuadInOut,
5305 CubicIn,
5306 CubicOut,
5307 CubicInOut,
5308 QuartIn,
5309 QuartOut,
5310 QuartInOut,
5311 QuintIn,
5312 QuintOut,
5313 QuintInOut,
5314 SineIn,
5315 SineOut,
5316 SineInOut,
5317 ExpIn,
5318 ExpOut,
5319 ExpInOut,
5320 CircIn,
5321 CircOut,
5322 CircInOut,
5323 BackIn,
5324 BackOut,
5325 BackInOut,
5326 ElasticIn,
5327 ElasticOut,
5328 ElasticInOut,
5329 ElasticIn2,
5330 ElasticOut2,
5331 ElasticInOut2,
5332 BounceIn,
5333 BounceOut,
5334 BounceInOut,
5335 };
5339 Void Add(CMlControl Control,Text XmlTarget,Integer StartTime,Integer Duration,CAnimManager::EAnimManagerEasing EasingFunc);
5343 Void AddChain(CMlControl Control,Text XmlTarget,Integer Duration,CAnimManager::EAnimManagerEasing EasingFunc);
5347 Void Add(CMlControl Control,Text XmlTarget,Integer Duration,CAnimManager::EAnimManagerEasing EasingFunc);
5351 Void Flush(CMlControl Control);
5352};
5353
5357class CMenuSceneManager : public CNod {
5358public :
5362 Ident SceneCreate(Text LayoutFileName);
5366 Void SceneDestroy(Ident SceneId);
5370 Void CameraSetLocation(Ident SceneId,Vec3 Position,Real AngleDeg);
5374 Void CameraSetLocation(Ident SceneId,Vec3 Position,Real AngleDeg,Real FovY_Deg);
5378 Void CameraSetFromItem(Ident SceneId,Ident ItemId);
5382 Void LightDir0Set(Ident SceneId,Vec3 sRGB,Real Intensity);
5386 Ident ItemCreate(Ident SceneId,Text ModelName,Text SkinName,Text SkinUrl);
5390 Ident ItemCreate(Ident SceneId,Text ModelName,Text SkinName,Text SkinUrl,Text SkinOptions);
5394 Void ItemDestroy(Ident SceneId,Ident ItemId);
5398 Void ItemSetLocation(Ident SceneId,Ident ItemId,Vec3 Position,Real AngleDeg,Boolean IsTurntable);
5402 Void ItemAttachTo(Ident SceneId,Ident ItemId,Ident ParentItemId);
5406 Void ItemSetVehicleState(Ident SceneId,Ident ItemId,Real Steer,Boolean Brakes,Boolean FrontLight,Integer TurboLvl,Integer BoostLvl,Boolean BurnoutSmoke);
5410 Void ItemSetPlayerState(Ident SceneId,Ident ItemId,Vec3 LightrailColor,Vec3 DossardColor,Text DossardNumber,Text DossardTrigram);
5414 Void ItemSetPlayerState(Ident SceneId,Ident ItemId,CUser User);
5418 Void ItemTriggerPlayerGesture(Ident SceneId,Ident ItemId);
5422 Void ItemSetPivot(Ident SceneId,Ident ItemId,Vec3 Pivot);
5426 Void ItemSetVisible(Ident SceneId,Ident ItemId,Boolean IsVisible);
5430 Void PlaneReflectEnable(Ident SceneId,Real OutOpacity,CMlQuad Quad0,CMlQuad Quad1,CMlQuad Quad2,CMlQuad Quad3);
5434 Void PlaneReflectEnable(Ident SceneId,Real OutOpacity,CMlQuad Quad0,CMlQuad Quad1,CMlQuad Quad2,CMlQuad Quad3,Real HorizonAngleDeg_InCamera);
5438 Void PlaneReflectRefresh();
5442 Void SetBackgroundQuads(Ident SceneId,CMlQuad Quad0,CMlQuad Quad1,CMlQuad Quad2,CMlQuad Quad3);
5446 Void CubeMapSetImage2ds(Ident SceneId,Text RelName0,Text RelName1,Text RelName2,Text RelName3);
5450 Void ColorGradingSetImage2ds(Ident SceneId,Text RelName0,Text RelName1,Text RelName2,Text RelName3);
5457 Void MoodLightDir0Set(Ident SceneId,Integer iMood,Vec3 sRGB,Real Intensity,Real AltitudeDeg,Real AzimutDeg);
5461 Void PodiumTweakShadingSet(Ident SceneId,Real BaseColor,Real CubeReflect,Real PlaneReflect);
5465 Void PostFxSet(Ident SceneId,Real BloomIntensity);
5466};
5467
5474class CSystemPlatform : public CNod {
5475public :
5479 enum ESystemPlatform {
5480 None,
5481 Steam,
5482 UPlay,
5483 PS4,
5484 XBoxOne,
5485 PS5,
5486 XBoxSeries,
5487 Stadia,
5488 Luna,
5489 };
5493 enum ESystemSkuIdentifier {
5494 Unknown,
5495 EU,
5496 US,
5497 JP,
5498 CN,
5499 };
5503 CSystemPlatform::ESystemPlatform const Platform;
5507 CSystemPlatform::ESystemSkuIdentifier const SkuIdentifier;
5511 Text const ExeVersion;
5519 Text const CurrentLocalDateText;
5523 Text const CurrentTimezone;
5527 Text const CurrentTimezoneTimeOffset;
5531 Text const ExtraTool_Info;
5535 Text ExtraTool_Data;
5539 Void ClipboardSet(Text ClipboardText);
5543 Void FlashWindow();
5548};
5549
5572
5581public :
5582};
5583
5592public :
5596 Array<CManiaAppEvent* const > PendingEvents;
5600 Void Menu_Quit();
5604 Void Menu_Home();
5608 Void Menu_Solo();
5612 Void Menu_Local();
5616 Void Menu_Internet();
5620 Void Menu_Editor();
5624 Void Menu_Profile();
5628 Boolean LoadingScreenRequireKeyPressed;
5632 Boolean DontScaleMainMenuForHMD;
5640 CTitleControl * const TitleControl;
5648 CNotificationsConsumer * const Notifications;
5652 Text const ExternalRequest_Type;
5656 Array<Text> ExternalRequest_Data;
5664 Void LogToSessionTrace(Text Text);
5668 CMatchSettingsManager * const MatchSettingsManager;
5672 CMenuSceneManager * const MenuSceneManager;
5676 Void Authentication_GetToken(Ident UserId,Text AppLogin);
5680 Boolean const Authentication_GetTokenResponseReceived;
5684 Integer const Authentication_ErrorCode;
5688 Text const Authentication_Token;
5692 Boolean Adverts_UsePersonnalData;
5696 Boolean Adverts_Enabled;
5700 CVoiceChatConfig * const VoiceChat;
5701};
5702
5711public :
5715 enum CardinalDirections {
5716 North,
5717 East,
5718 South,
5719 West,
5720 };
5724 enum CardinalDirections8 {
5725 North,
5726 East,
5727 South,
5728 West,
5729 NorthEast,
5730 SouthEast,
5731 SouthWest,
5732 NorthWest,
5733 };
5737 enum RelativeDirections {
5738 Forward,
5739 RightForward,
5740 Right,
5741 RightBackward,
5742 Backward,
5743 LeftBackward,
5744 Left,
5745 LeftForward,
5746 };
5750 enum PlaceMode {
5751 Unknown,
5752 Terraform,
5753 Block,
5754 Macroblock,
5755 Skin,
5756 CopyPaste,
5757 Test,
5758 Plugin,
5759 CustomSelection,
5760 OffZone,
5761 BlockProperty,
5762 Path,
5763 GhostBlock,
5764 Item,
5765 Light,
5766 FreeBlock,
5767 FreeMacroblock,
5768 };
5772 enum EditMode {
5773 Unknown,
5774 Place,
5775 FreeLook,
5776 Erase,
5777 Pick,
5778 SelectionAdd,
5779 SelectionRemove,
5780 };
5784 enum ShadowsQuality {
5785 NotComputed,
5786 VeryFast,
5787 Fast,
5788 Default,
5789 High,
5790 Ultra,
5791 };
5795 enum ValidationStatus {
5796 NotValidable,
5797 Validable,
5798 Validated,
5799 };
5803 enum MapElemColor {
5804 Default,
5805 White,
5806 Green,
5807 Blue,
5808 Red,
5809 Black,
5810 };
5814 enum PhaseOffset {
5815 None,
5816 One8th,
5817 Two8th,
5818 Three8th,
5819 Four8th,
5820 Five8th,
5821 Six8th,
5822 Seven8th,
5823 };
5827 enum MapElemLightmapQuality {
5828 Normal,
5829 High,
5830 VeryHigh,
5831 Highest,
5832 Low,
5833 VeryLow,
5834 Lowest,
5835 };
5839 enum MapElemColorPalette {
5840 Classic,
5841 Stunt,
5842 Red,
5843 Orange,
5844 Yellow,
5845 Lime,
5846 Green,
5847 Cyan,
5848 Blue,
5849 Purple,
5850 Pink,
5851 White,
5852 Black,
5853 };
5861 CMap * const Map;
5865 Text const MapName;
5869 Text const MapFileName;
5873 Boolean const IsEditorReadyForRequest;
5877 Boolean const BackToMainMenuRequested;
5881 Boolean HoldLoadingScreen;
5885 Void HideOtherPlugins();
5889 Void ShowOtherPlugins();
5893 Void ComputeShadows();
5897 Void ComputeShadows(CMapEditorPlugin::ShadowsQuality ShadowsQuality);
5901 CMapEditorPlugin::ShadowsQuality const CurrentShadowsQuality;
5905 Boolean const IsUltraShadowsQualityAvailable;
5909 Void DisplayDefaultSetObjectivesDialog();
5913 Boolean Undo();
5917 Boolean Redo();
5921 Void Help();
5925 Void Validate();
5929 Void AutoSave();
5933 Void Quit();
5937 Void QuickQuit();
5941 Void QuitAndSetResult(Text Type,Array<Text> Data);
5945 Void QuickQuitAndSetResult(Text Type,Array<Text> Data);
5949 Void TestMapFromStart();
5953 Void TestMapFromCoord(Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
5957 Void TestMapFromMacroblockInstance(CMacroblockInstance MbInstance);
5961 Void TestMapWithMode(Text RulesModeName);
5965 Void TestMapWithMode(Text RulesModeName,Text SettingsXml);
5969 Void TestMapWithMode_SplitScreen(Text RulesModeName);
5973 Void TestMapWithMode_SplitScreen(Text RulesModeName,Integer ScreenCount);
5977 Void TestMapWithMode_SplitScreen(Text RulesModeName,Integer ScreenCount,Integer FakeCount,Text SettingsXml);
5981 Boolean EnableMapTypeStartTest;
5985 Void SaveMap(Text FileName);
5989 Void SaveMapGamepadEditor(Text FileName);
5993 Void SaveMap(Text FileName,Text Path);
5997 CMapEditorPlugin::PlaceMode PlaceMode;
6001 CMapEditorPlugin::EditMode EditMode;
6005 CMapEditorPlugin::MapElemColor NextMapElemColor;
6009 CMapEditorPlugin::MapElemColorPalette MapElemColorPalette;
6013 Void SetNextMapElemColorPalette();
6017 Boolean const IsColorBlindModeActive;
6025 Boolean ForceMacroblockColor;
6029 CMapEditorPlugin::MapElemColor GetMapElemColor(CBlock Block);
6033 CMapEditorPlugin::MapElemColor GetMapElemColor(CItemAnchor AnchoredObject);
6037 CMapEditorPlugin::MapElemColor GetMapElemColor(CAnchorData Anchor);
6041 Void SetMapElemColor(CBlock Block,CMapEditorPlugin::MapElemColor Color);
6045 Void SetMapElemColor(CItemAnchor AnchoredObject,CMapEditorPlugin::MapElemColor Color);
6049 Void SetMapElemColor(CAnchorData Anchor,CMapEditorPlugin::MapElemColor Color);
6053 Text GetColorPaletteName(CMapEditorPlugin::MapElemColorPalette EColorPalette);
6057 Vec3 GetColorPaletteCurrentColor(CMapEditorPlugin::MapElemColorPalette EColorPalette,CMapEditorPlugin::MapElemColor EColor);
6061 Vec3 GetColorPaletteColorblindColor(CMapEditorPlugin::MapElemColorPalette EColorPalette,CMapEditorPlugin::MapElemColor EColor);
6065 Vec3 GetColorPaletteNotColorblindColor(CMapEditorPlugin::MapElemColorPalette EColorPalette,CMapEditorPlugin::MapElemColor EColor);
6069 CMapEditorPlugin::PhaseOffset NextItemPhaseOffset;
6073 CMapEditorPlugin::PhaseOffset NextMbAdditionalPhaseOffset;
6077 CMapEditorPlugin::MapElemLightmapQuality NextMapElemLightmapQuality;
6081 Boolean ForceMacroblockLightmapQuality;
6085 Boolean UndergroundMode;
6089 Boolean BlockStockMode;
6093 CMapEditorInventory * const Inventory;
6097 Boolean HideInventory;
6101 Real CameraVAngle;
6105 Real CameraHAngle;
6109 Real CameraToTargetDistance;
6113 Vec3 CameraTargetPosition;
6117 Vec3 const CameraPosition;
6121 Real ThumbnailCameraVAngle;
6125 Real ThumbnailCameraHAngle;
6129 Real ThumbnailCameraRoll;
6133 Real ThumbnailCameraFovY;
6137 Vec3 ThumbnailCameraPosition;
6141 Boolean GetRaceCamera(Vec3 Position,Real Yaw,Real Pitch,Real Roll,Real FovY);
6145 Boolean EnableAirMapping;
6149 Boolean EnableMixMapping;
6153 Void RemoveAllBlocks();
6157 Void RemoveAllTerrain();
6161 Void RemoveAllOffZone();
6165 Void RemoveAllObjects();
6169 Void RemoveAll();
6173 Void RemoveAllBlocksAndTerrain();
6177 Void ShowCustomSelection();
6181 Void HideCustomSelection();
6185 Void CopyPaste_Copy();
6189 Void CopyPaste_Cut();
6193 Void CopyPaste_Remove();
6197 Void CopyPaste_SelectAll();
6201 Void CopyPaste_ResetSelection();
6205 Void OpenToolsMenu();
6209 Void EditMediatrackIngame();
6213 Void PreloadAllBlocks();
6217 Void PreloadAllItems();
6221 Boolean CanPlaceBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,Boolean OnGround,Integer VariantIndex);
6225 Boolean PlaceBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6229 Boolean CanPlaceGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6233 Boolean PlaceGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6237 Boolean CanPlaceBlock_NoDestruction(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,Boolean OnGround,Integer VariantIndex);
6241 Boolean PlaceBlock_NoDestruction(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6245 Boolean CanPlaceRoadBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6249 Boolean PlaceRoadBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6253 Boolean CanPlaceTerrainBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6257 Boolean PlaceTerrainBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6261 Boolean PlaceTerrainBlocks_NoDestruction(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6265 Boolean CanPlaceMacroblock(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6269 Boolean PlaceMacroblock(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6273 Boolean PlaceMacroblock_AirMode(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6277 Boolean CanPlaceMacroblock_NoDestruction(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6281 Boolean PlaceMacroblock_NoDestruction(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6285 Boolean CanPlaceMacroblock_NoTerrain(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6289 Boolean PlaceMacroblock_NoTerrain(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6293 Boolean RemoveMacroblock(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6297 Boolean RemoveMacroblock_NoTerrain(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6301 CBlock GetBlock(Int3 Coord);
6305 CBlock GetBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6309 CBlock GetGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6313 Boolean IsBlockModelSkinnable(CBlockModel BlockModel);
6317 Integer GetNbBlockModelSkins(CBlockModel BlockModel);
6321 Text GetBlockModelSkin(CBlockModel BlockModel,Integer SkinIndex);
6325 Boolean IsItemModelSkinnable(CGameItemModel ItemModel);
6329 Integer GetNbItemModelSkins(CGameItemModel ItemModel);
6333 Text GetItemModelSkin(CGameItemModel ItemModel,Integer SkinIndex);
6337 Text GetSkinDisplayName(Text SkinFileName);
6341 Text GetBlockSkinBg(CBlock Block);
6345 Text GetBlockSkinFg(CBlock Block);
6349 Void SetBlockSkin(CBlock Block,Text SkinFileName);
6353 Void SetBlockSkins(CBlock Block,Text BgSkinFileName,Text FgSkinFileName);
6357 Text GetItemSkinBg(CItemAnchor AnchoredObject);
6361 Text GetItemSkinFg(CItemAnchor AnchoredObject);
6365 Void SetItemSkin(CItemAnchor AnchoredObject,Text SkinFileName);
6369 Void SetItemSkins(CItemAnchor AnchoredObject,Text BgSkinFileName,Text FgSkinFileName);
6373 Boolean IsSkinForeground(CBlockModel BlockModel,Text SkinFileName);
6377 Boolean IsSkinForeground(CGameItemModel ItemModel,Text SkinFileName);
6381 Boolean IsMacroblockModelSkinnable(CMacroblockModel BlockModel);
6385 Boolean SetMacroblockSkin(CMacroblockInstance Macroblock,Text SkinFileName);
6389 Boolean OpenBlockSkinDialog(CBlock Block);
6393 Boolean RemoveBlock(Int3 Coord);
6397 Boolean RemoveBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6401 Boolean RemoveGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6405 Boolean RemoveTerrainBlocks(Int3 StartCoord,Int3 EndCoord);
6409 Integer GetBlockGroundHeight(CBlockModel BlockModel,Integer CoordX,Integer CoordZ,CMapEditorPlugin::CardinalDirections Dir);
6413 Integer GetGroundHeight(Integer CoordX,Integer CoordZ);
6417 Int3 GetMouseCoordOnGround();
6421 Int3 GetMouseCoordAtHeight(Integer CoordY);
6425 CBlock GetStartLineBlock();
6429 Boolean RemoveItem(CAnchorData Item);
6433 Void CopyPaste_AddOrSubSelection(Int3 StartCoord,Int3 EndCoord);
6437 Boolean CopyPaste_Symmetrize();
6441 Integer CopyPaste_GetSelectedCoordsCount();
6445 Void SaveMacroblock(CMacroblockModel MacroblockModel);
6449 Boolean CopyPaste_ApplyColorToSelection(CMapEditorPlugin::MapElemColor Color);
6453 Boolean CopyPaste_IncreaseSelectionPhaseOffset(CMapEditorPlugin::PhaseOffset Offset);
6457 Boolean CopyPaste_DecreaseSelectionPhaseOffset(CMapEditorPlugin::PhaseOffset Offset);
6461 Boolean CopyPaste_SetSelectionPhaseOffset(CMapEditorPlugin::PhaseOffset Offset);
6465 Boolean CopyPaste_ApplyLightmapQualityToSelection(CMapEditorPlugin::MapElemLightmapQuality LightmapQuality);
6469 Void CopyPaste_GetLightmapQualityInSelection();
6473 Array<CMapEditorPlugin::MapElemLightmapQuality> CopyPaste_GetLightmapQualityInSelection_Results;
6477 CMacroblockModel GetMacroblockModelFromFilePath(Text MacroblockModelFilePath);
6481 CBlockModel GetTerrainBlockModelFromName(Text TerrainBlockModelName);
6485 CBlockModel GetBlockModelFromName(Text BlockModelName);
6489 CBlockClipList CreateFrameClipList();
6493 CBlockClipList CreateFixedClipList();
6497 Void UnvalidateMetadata();
6501 Void UnvalidateGameplayInfo();
6505 Void UnvalidatePlayfield();
6509 Boolean RemoveMacroblock_NoTerrain_NoUnvalidate(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6513 Boolean PlaceMacroblock_NoTerrain_NoUnvalidate(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6517 Void ResetAutoRepeat();
6521 Void ComputeItemsForMacroblockInstance(CMacroblockInstance MacroBlockInstance);
6525 Array<CItemAnchor* const > MacroblockInstanceItemsResults;
6529 Void GetConnectResults(CBlock ExistingBlock,CBlockModel NewBlock);
6533 Void GetConnectResults(CBlock ExistingBlock,CMacroblockModel NewBlock);
6537 Void GetConnectResults(CMacroblockInstance ExistingBlock,CBlockModel NewBlock);
6541 Void GetConnectResults(CMacroblockInstance ExistingBlock,CMacroblockModel NewBlock);
6545 Integer GetStartBlockCount(Boolean IncludeMultilaps);
6549 Integer GetFinishBlockCount(Boolean IncludeMultilaps);
6553 Integer GetMultilapBlockCount();
6557 Integer GetCheckpointBlockCount();
6561 Integer GetItemsCountResult();
6565 Array<Text> GetItemsCountRequest;
6569 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor);
6573 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor,Integer UserData);
6577 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CBlockClipList DefaultClipList,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor);
6581 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CBlockClipList DefaultClipList,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor,Integer UserData);
6585 CMacroblockInstance GetMacroblockInstanceFromOrder(Integer Order);
6589 CMacroblockInstance GetMacroblockInstanceFromUnitCoord(Int3 Coord);
6593 CMacroblockInstance GetLatestMacroblockInstance();
6597 CMacroblockInstance GetLatestMacroblockInstance(Integer Offset);
6601 CMacroblockInstance GetMacroblockInstanceConnectedToClip(CBlockClip Clip);
6605 Boolean RemoveMacroblockInstance(CMacroblockInstance MacroblockInstance);
6609 Boolean RemoveMacroblockInstanceFromOrder(Integer Order);
6613 Boolean RemoveMacroblockInstanceFromUnitCoord(Integer Order);
6617 Boolean RemoveMacroblockInstancesByUserData(Integer UserData);
6621 Void ResetAllMacroblockInstances();
6625 Integer GetMaxOrder();
6629 Boolean SetMapType(Text MapType);
6633 Text GetMapType();
6637 Void SetMapStyle(Text MapStyle);
6641 Text GetMapStyle();
6645 Text GetAvailableMapName();
6649 Boolean IsMapFileNameAvailable(Text MapName);
6653 Vec3 GetVec3FromCoord(Int3 Coord);
6657 CMapEditorCamera * const Camera;
6661 CMapEditorCursor * const Cursor;
6669 Array<Text> MediatrackIngameClips;
6673 Integer MediatrackIngameEditedClipIndex;
6677 Array<CBlock* const > Blocks;
6681 Array<CBlockModel* const > BlockModels;
6685 Array<CBlockModel* const > TerrainBlockModels;
6689 Array<CMacroblockModel* const > MacroblockModels;
6693 Array<CBlock* const > ClassicBlocks;
6697 Array<CBlock* const > TerrainBlocks;
6701 Array<CBlock* const > GhostBlocks;
6705 Array<CBlockClipList* const > FixedClipLists;
6709 Array<CBlockClipList* const > FrameClipLists;
6713 Array<CBlockClipList* const > MacroblockInstanceClipLists;
6717 Array<CMacroblockInstance* const > MacroblockInstances;
6725 Array<CAnchorData* const > AnchorData;
6729 Boolean DoesAnchorHaveSpawn(CAnchorData Anchor);
6733 Array<Int3> CustomSelectionCoords;
6737 Vec3 CustomSelectionRGB;
6741 Boolean EnableEditorInputsCustomProcessing;
6745 Boolean EnableCursorShowingWhenInterfaceIsFocused;
6749 Boolean HideEditorInterface;
6753 Boolean HideBlockHelpers;
6757 Boolean ShowPlacementGrid;
6761 Boolean const IsTesting;
6765 Boolean const IsValidating;
6769 Boolean const EditorInputIsDown_Menu;
6773 Boolean const EditorInputIsDown_SwitchToRace;
6777 Boolean const EditorInputIsDown_Undo;
6781 Boolean const EditorInputIsDown_Redo;
6785 Boolean const EditorInputIsDown_CursorTiltLeft;
6789 Boolean const EditorInputIsDown_CursorTiltRight;
6793 Boolean const EditorInputIsDown_CursorUp;
6797 Boolean const EditorInputIsDown_CursorRight;
6801 Boolean const EditorInputIsDown_CursorDown;
6805 Boolean const EditorInputIsDown_CursorLeft;
6809 Boolean const EditorInputIsDown_CursorRaise;
6813 Boolean const EditorInputIsDown_CursorLower;
6817 Boolean const EditorInputIsDown_CursorTurn;
6821 Boolean const EditorInputIsDown_CursorPick;
6825 Boolean const EditorInputIsDown_CursorPlace;
6829 Boolean const EditorInputIsDown_CursorDelete;
6833 Boolean const EditorInputIsDown_CameraUp;
6837 Boolean const EditorInputIsDown_CameraRight;
6841 Boolean const EditorInputIsDown_CameraDown;
6845 Boolean const EditorInputIsDown_CameraLeft;
6849 Boolean const EditorInputIsDown_CameraZoomNext;
6853 Boolean const EditorInputIsDown_Camera0;
6857 Boolean const EditorInputIsDown_Camera1;
6861 Boolean const EditorInputIsDown_Camera3;
6865 Boolean const EditorInputIsDown_Camera7;
6869 Boolean const EditorInputIsDown_Camera9;
6873 Boolean const EditorInputIsDown_PivotChange;
6877 Boolean const EditorInputIsDown_CursorTurnSlightly;
6881 Boolean const EditorInputIsDown_CursorTurnSlightlyAntiClockwise;
6885 Boolean const EditorInputIsDown_IconUp;
6889 Boolean const EditorInputIsDown_IconRight;
6893 Boolean const EditorInputIsDown_IconDown;
6897 Boolean const EditorInputIsDown_IconLeft;
6901 Boolean const EditorInputIsDown_RemoveAll;
6905 Boolean const EditorInputIsDown_Save;
6909 Boolean const EditorInputIsDown_SelectAll;
6913 Boolean const EditorInputIsDown_Copy;
6917 Boolean const EditorInputIsDown_Cut;
6921 Boolean const EditorInputIsDown_Paste;
6925 Real const CollectionSquareSize;
6929 Real const CollectionSquareHeight;
6933 Integer const CollectionGroundY;
6937 CMapEditorPlugin::ValidationStatus const ValidationStatus;
6949 Text ManialinkText;
6953 CMlPage * const ManialinkPage;
6954};
6955
6959class CUILayer : public CNod {
6960public :
6964 enum EUILayerType {
6965 Normal,
6966 ScoresTable,
6967 ScreenIn3d,
6968 AltMenu,
6969 Markers,
6970 CutScene,
6971 InGameMenu,
6972 EditorPlugin,
6973 ManiaplanetPlugin,
6974 ManiaplanetMenu,
6975 LoadingScreen,
6976 };
6980 enum EUILayerAnimation {
6981 None,
6982 DownFast,
6983 DownSlow,
6984 LeftFast,
6985 LeftSlow,
6986 RightFast,
6987 RightSlow,
6988 ScaleFast,
6989 ScaleSlow,
6990 UpFast,
6991 UpSlow,
6992 };
6996 Boolean IsVisible;
7000 Boolean const AnimInProgress;
7004 CUILayer::EUILayerType Type;
7008 CUILayer::EUILayerAnimation InAnimation;
7012 CUILayer::EUILayerAnimation OutAnimation;
7016 CUILayer::EUILayerAnimation InOutAnimation;
7020 Text AttachId;
7024 Text ManialinkPage;
7028 CMlPage * const LocalPage;
7032 Boolean const IsLocalPageScriptRunning;
7033};
7034
7038class CTrackingMgr : public CNod {
7039public :
7043 enum EEventColorLevel {
7044 White,
7045 Green,
7046 Blue,
7047 Red,
7048 Black,
7049 };
7053 enum EEventMedalLevel {
7054 Finished,
7055 Bronze,
7056 Silver,
7057 Gold,
7058 Author,
7059 };
7063 enum EEventSeason {
7064 Winter,
7065 Spring,
7066 Summer,
7067 Fall,
7068 };
7072 enum EPlayTimeContext {
7073 None,
7074 Club,
7075 Create,
7076 Live,
7077 Local,
7078 Solo,
7079 };
7091 Void Track_Context_PlayTime(Ident UserId,CTrackingMgr::EPlayTimeContext PlayTimeContext);
7111 Void Track_Context_MapStart(Ident UserId,Text MapUid,Text Environment);
7123 Void Track_Context_PlayStop(Ident UserId,Text Type,Text Reason,Integer NbRespawns);
7127 Void Track_Create_NewMapCreated(Ident UserId,Text Environment,Boolean IsRandomlyGenerated);
7143 Void Track_Live_RoyalPlayed_V2(Ident UserId,Integer Rank,Boolean Win,Boolean IsSuperRoyal,Text Division);
7147 Void Track_Live_RoyalSectionFinished_V2(Ident UserId,CTrackingMgr::EEventColorLevel ColorLevel);
7159 Void Track_News_PlayerAction(Ident UserId,Text NewsId,Text Placement,Text Action);
7163 Void Track_News_PlayerImpression(Ident UserId,Text NewsId,Text Placement,Integer Duration);
7167 Void Track_Player_MedalEarned(Ident UserId,Integer Finished,Integer BronzeMedal,Integer SilverMedal,Integer GoldMedal,Integer AuthorMedal,Boolean IsOfficialCampaign,Boolean IsTOTD);
7171 Void Track_Player_OfficialCampaign10TrackCompleted(Ident UserId,Integer Year,CTrackingMgr::EEventSeason Season,CTrackingMgr::EEventMedalLevel MedalLevel);
7175 Void Track_Player_OfficialCampaignAllTrackCompleted_V2(Ident UserId,Integer Year,CTrackingMgr::EEventSeason Season,CTrackingMgr::EEventMedalLevel MedalLevel);
7179 Void Track_Player_TrackOfTheDayWeekAllTrackCompleted_V2(Ident UserId,Integer Year,Integer Week,CTrackingMgr::EEventMedalLevel MedalLevel);
7183 Void Track_Player_TrophyEarned(Ident UserId,Integer T1CountPtr,Integer T2CountPtr,Integer T3CountPtr,Integer T4CountPtr,Integer T5CountPtr,Integer T6CountPtr,Integer T7CountPtr,Integer T8CountPtr,Integer T9CountPtr);
7192};
7193
7202public :
7206 enum EInteractionStatus {
7207 Active,
7208 Closed,
7209 Aborted,
7210 };
7214 Array<CManiaAppEvent* const > PendingEvents;
7218 CEditorModule * const ModuleEditor;
7222 CEditorMesh * const MeshEditor;
7226 CEditorEditor * const EditorEditor;
7230 CEditorMediaTracker * const MediaTracker;
7234 CEditorSkin * const SkinEditor;
7238 CAnyEditorPlugin::EInteractionStatus const InteractionStatus;
7239};
7240
7248public :
7249};
7250
7254class CMapInfo : public CNod {
7255public :
7259 Text const MapUid;
7263 Text const Comments;
7267 Integer const CopperPrice;
7271 Text const CollectionName;
7275 Text const AuthorLogin;
7279 Text const AuthorNickName;
7283 Text const AuthorZonePath;
7287 Text const AuthorZoneFlagUrl;
7291 Text const AuthorCountryFlagUrl;
7295 Text const MapType;
7299 Text const MapStyle;
7303 Boolean const IsPlayable;
7307 Boolean const CreatedWithSimpleEditor;
7311 Boolean const CreatedWithPartyEditor;
7315 Boolean const CreatedWithGamepadEditor;
7319 Integer const TMObjective_AuthorTime;
7323 Integer const TMObjective_GoldTime;
7327 Integer const TMObjective_SilverTime;
7331 Integer const TMObjective_BronzeTime;
7335 Integer const TMObjective_NbLaps;
7339 Boolean const TMObjective_IsLapRace;
7343 Text const Name;
7347 Text const Path;
7351 Text const FileName;
7352};
7353
7360class CClient : public CNod {
7361public :
7365 CUser * const User;
7369 CUIConfig * const UI;
7377 Text const ClientVersion;
7381 Text const ClientTitleVersion;
7385 Boolean const IsSpectator;
7390};
7391
7400class CUIConfig : public CNod {
7401public :
7405 enum EUISequence {
7406 None,
7407 Playing,
7408 Intro,
7409 Outro,
7410 Podium,
7411 CustomMTClip,
7412 EndRound,
7413 PlayersPresentation,
7414 UIInteraction,
7415 RollingBackgroundIntro,
7416 CustomMTClip_WithUIInteraction,
7417 Finish,
7418 };
7422 enum EUIStatus {
7423 None,
7424 Normal,
7425 Warning,
7426 Error,
7427 Official,
7428 };
7432 enum EVisibility {
7433 None,
7434 Normal,
7435 Manual,
7436 ForcedHidden,
7437 ForcedVisible,
7438 };
7442 enum ELabelsVisibility {
7443 None,
7444 Never,
7445 Always,
7446 WhenInFrustum,
7447 WhenVisible,
7448 WhenInMiddleOfScreen,
7449 };
7453 enum EAvatarVariant {
7454 Default,
7455 Sad,
7456 Happy,
7457 };
7461 enum EUISound {
7462 Default,
7463 Silence,
7464 StartMatch,
7465 EndMatch,
7466 StartRound,
7467 EndRound,
7468 PhaseChange,
7469 TieBreakPoint,
7470 TiePoint,
7471 VictoryPoint,
7472 Capture,
7473 TimeOut,
7474 Notice,
7475 Warning,
7476 PlayerEliminated,
7477 PlayerHit,
7478 Checkpoint,
7479 Finish,
7480 Record,
7481 ScoreProgress,
7482 RankChange,
7483 Bonus,
7484 FirstHit,
7485 Combo,
7486 PlayersRemaining,
7487 Custom1,
7488 Custom2,
7489 Custom3,
7490 Custom4,
7491 };
7495 enum ENoticeLevel {
7496 Default,
7497 PlayerInfo,
7498 PlayerWarning,
7499 MapInfo,
7500 MapWarning,
7501 MatchInfo,
7502 MatchWarning,
7503 };
7507 enum EMessageDisplay {
7508 Chat,
7509 Small,
7510 Status,
7511 Big,
7512 };
7516 enum EObserverMode {
7517 Default,
7518 Forced,
7519 Forbidden,
7520 Manual,
7521 };
7525 enum EHudVisibility {
7526 Nothing,
7527 Everything,
7528 MarkersOnly,
7529 Default,
7530 };
7534 enum ECutSceneStyle {
7535 None,
7536 TM,
7537 SM,
7538 };
7542 CUIConfig::EUISequence UISequence;
7546 Boolean const UISequenceIsCompleted;
7550 Text UISequence_CustomMTClip;
7554 Integer UISequence_CustomMTRefTime;
7558 Boolean UISequence_CanSkipIntroMT;
7562 Text UISequence_PodiumPlayersWin;
7566 Text UISequence_PodiumPlayersLose;
7570 CUIConfig::ECutSceneStyle UISequence_CutSceneStyle;
7574 Boolean DisableZoomTransitions;
7578 Text ManialinkPage;
7582 Text BigMessage;
7586 Text BigMessageAvatarLogin;
7590 CUIConfig::EAvatarVariant BigMessageAvatarVariant;
7594 CUIConfig::EUISound BigMessageSound;
7598 Integer BigMessageSoundVariant;
7602 Text StatusMessage;
7606 Text GaugeMessage;
7610 Real GaugeRatio;
7614 Integer GaugeClan;
7631 Array<CUILayer* const > UILayers;
7635 Boolean OverlayHideNotices;
7639 Boolean OverlayHideMapInfo;
7643 Boolean OverlayHideChat;
7647 Boolean OverlayHideCountdown;
7651 Boolean OverlayHideCrosshair;
7655 Boolean OverlayHideGauges;
7659 Boolean OverlayHideConsumables;
7663 Boolean OverlayHide321Go;
7667 Boolean OverlayMute321Go;
7671 Boolean OverlayHideEndMapLadderRecap;
7675 Boolean OverlayHideSpectatorInfos;
7683 Vec2 OverlayChatOffset;
7691 Vec2 CountdownCoord;
7695 Boolean NoticesFilter_HidePlayerInfo;
7699 Boolean NoticesFilter_HidePlayerWarning;
7703 Boolean NoticesFilter_HidePlayerInfoIfNotMe;
7707 Boolean NoticesFilter_HidePlayerWarningIfNotMe;
7711 Boolean NoticesFilter_HideMapInfo;
7715 Boolean NoticesFilter_HideMapWarning;
7719 Boolean NoticesFilter_HideMatchInfo;
7723 Boolean NoticesFilter_HideMatchWarning;
7727 CUIConfig::ENoticeLevel NoticesFilter_LevelToShowAsBigMessage;
7731 Text ScoreTable;
7735 CUIConfig::EVisibility ScoreTableVisibility;
7739 Text SmallScoreTable;
7743 CUIConfig::EVisibility SmallScoreTableVisibility;
7747 Boolean ScoreTableOnlyManialink;
7751 Boolean AltMenuNoDefaultScores;
7755 Boolean AltMenuNoCustomScores;
7759 Boolean OverlayScoreSummary;
7763 Ident ScoreSummary_Player1;
7767 Integer ScoreSummary_Points1;
7771 Integer ScoreSummary_RoundPoints1;
7775 Integer ScoreSummary_MatchPoints1;
7779 Real ScoreSummary_Gauge1;
7783 Ident ScoreSummary_Player2;
7787 Integer ScoreSummary_Points2;
7791 Integer ScoreSummary_RoundPoints2;
7795 Integer ScoreSummary_MatchPoints2;
7799 Real ScoreSummary_Gauge2;
7803 Boolean ScreenIn3dHideScoreSummary;
7807 Boolean ScreenIn3dHideVersus;
7811 Boolean DisplayControl_UseLiveCamera;
7815 Boolean DisplayControl_UseEsportsProgrammation;
7819 Integer CountdownEndTime;
7823 CUIConfig::EUIStatus UIStatus;
7827 CUIConfig::EHudVisibility LabelsVisibility;
7831 Boolean LabelsVisibility_SkipMarkersOnly;
7835 CUIConfig::ELabelsVisibility AlliesLabelsVisibility;
7839 CUIConfig::EVisibility AlliesLabelsShowGauges;
7843 CUIConfig::EVisibility AlliesLabelsShowNames;
7851 CUIConfig::ELabelsVisibility TeamLabelsVisibility;
7855 CUIConfig::EVisibility TeamLabelsShowGauges;
7859 CUIConfig::EVisibility TeamLabelsShowNames;
7863 CUIConfig::ELabelsVisibility OpposingTeamLabelsVisibility;
7867 CUIConfig::EVisibility OpposingTeamLabelsShowGauges;
7871 CUIConfig::EVisibility OpposingTeamLabelsShowNames;
7875 Boolean PlayerDisableFreeCam;
7879 Boolean ForceSpectator;
7883 Integer SpectatorForceCameraType;
7887 Real SpectatorCamAutoLatitude;
7891 Real SpectatorCamAutoLongitude;
7895 Real SpectatorCamAutoRadius;
7899 CUIConfig::EObserverMode SpectatorObserverMode;
7903 Void Spectator_SetAutoTarget_Clear();
7907 Void Spectator_SetAutoTarget_All();
7911 Void Spectator_SetAutoTarget_User(CUser User);
7915 Void Spectator_SetForcedTarget_Clear();
7919 Void Spectator_SetForcedTarget_AllPlayers();
7923 Void Spectator_SetForcedTarget_AllMap();
7927 Void Spectator_SetForcedTarget_Entity(CEntity Entity);
7931 Void Spectator_SetForcedTarget_Landmark(CMapLandmark Landmark);
7939 Void Spectator_SetForcedTarget_Clan(Integer ClanNumber);
7943 Void SendChat(Text Text);
7947 Void SendNotice(Text Text,CUIConfig::ENoticeLevel Level,CUser Avatar,CUIConfig::EAvatarVariant AvatarVariant,CUIConfig::EUISound Sound,Integer SoundVariant);
7951 Text GetLayerManialinkAction(CUILayer Layer);
7955 Void ClearLayerManialinkAction(CUILayer Layer);
7959 CUIConfigMarker AddMarker(Vec3 Position);
7963 CUIConfigMarker AddMarker(CEntity Entity);
7967 CUIConfigMarker AddMarker(CMapLandmark Landmark);
7971 CUIConfigMarker AddMarker(Ident GhostInstanceId);
7975 Void RemoveMarker(CUIConfigMarker Marker);
7979 Void ClearMarkers();
7983 Void QueueMessage(Integer Duration,Integer Priority,CUIConfig::EMessageDisplay Level,Text Message,CUser Avatar,CUIConfig::EAvatarVariant AvatarVariant,CUIConfig::EUISound Sound,Integer SoundVariant);
7987 Void QueueMessage(Integer Duration,Integer Priority,CUIConfig::EMessageDisplay Level,Text Message,CUIConfig::EUISound Sound,Integer SoundVariant);
7991 Void QueueMessage(Integer Duration,Integer Priority,CUIConfig::EMessageDisplay Level,Text Message);
7995 Void ClearMessages();
7996};
7997
8006class CPlayer : public CEntity {
8007public :
8011 CUser * const User;
8015 Integer const RequestedClan;
8019 Boolean const RequestsSpectate;
8024};
8025
8034class CScore : public CNod {
8035public :
8039 CUser * const User;
8043 Boolean const IsRegisteredForLadderMatch;
8047 Real const LadderScore;
8051 Integer LadderRankSortValue;
8055 Real LadderMatchScoreValue;
8059 Integer LadderClan;
8060};
8061
8070class CTeam : public CNod {
8071public :
8075 Text Name;
8079 Text ZonePath;
8083 Text City;
8087 Text EmblemUrl;
8091 Text PresentationManialinkUrl;
8095 Text ClubLinkUrl;
8099 Vec3 ColorPrimary;
8103 Vec3 ColorSecondary;
8107 Vec3 ColorUI;
8111 Text const ColorText;
8115 Text const ColorizedName;
8116};
8117
8125public :
8129 enum EType {
8130 Unknown,
8131 ClientConnected,
8132 ClientDisconnected,
8133 MapLoaded,
8134 BeginMatch,
8135 BeginRound,
8136 EndRound,
8137 EndMatch,
8138 MapUnloadRequested,
8139 MapUnloaded,
8140 ChatCommand,
8141 ChatMessage,
8142 ModeCallback,
8143 };
8147 enum EChatOption {
8148 Default,
8149 ToSpectatorCurrent,
8150 ToSpectatorAll,
8151 ToTeam,
8152 };
8156 CServerPluginEvent::EType const Type;
8160 CClient * const Client;
8164 Text const ChatText;
8168 CServerPluginEvent::EChatOption const ChatOption;
8172 Text const ChatCommandType;
8176 Array<Text> ChatCommandData;
8180 Text const ModeCallbackType;
8184 Array<Text> ModeCallbackData;
8188 Array<CScore* const > EndMatchScores;
8192 Array<Integer> EndMatchRanks;
8193};
8194
8198class CUIConfigMgr : public CNod {
8199public :
8203 Void ResetAll();
8207 CUIConfig * const UIAll;
8215 CUIConfig GetUI(CPlayer Player);
8219 CUIConfig GetUI(CUser User);
8223 CUIConfig GetUI(CClient Client);
8227 Array<CUILayer* const > UILayers;
8231 CUILayer UILayerCreate();
8235 Void UILayerDestroy(CUILayer Layer);
8239 Void UILayerDestroyAll();
8243 Array<CUILayer* const > UIReplayLayers;
8247 Integer UISequenceMaxDuration;
8251 Boolean HoldLoadingScreen;
8255 Array<CUIConfigEvent* const > PendingEvents;
8256};
8257
8261class CServerAdmin : public CNod {
8262public :
8266 enum ESpecMode {
8267 Selectable,
8268 SpectatorForced,
8269 PlayerForced,
8270 SpectatorSelectable,
8271 PlayerSelectable,
8272 };
8280 Void AutoTeamBalance();
8284 Boolean Kick(CUser User,Text Reason);
8288 Boolean Kick(CClient Client,Text Reason);
8292 Boolean Ban(CUser User,Text Reason);
8296 Boolean Ban(CClient Client,Text Reason);
8300 Boolean ForceSpectator(CUser User,CServerAdmin::ESpecMode SpecMode);
8304 Boolean ForceSpectator(CClient Client,CServerAdmin::ESpecMode SpecMode);
8308 Boolean ForcePlayerRequestedTeam(CUser User,Integer Team);
8320 Boolean IsDisableProfileSkins;
8328 Void DisconnectFakePlayer(Text Login);
8332 Void SetLobbyInfo(Boolean IsLobby,Integer LobbyPlayerCount,Integer LobbyMaxPlayerCount,Real LobbyPlayersLevel);
8336 Void SendToServerAfterMatch(Text ServerUrl);
8340 Void CustomizeQuitDialog(Text ManialinkPage,Text SendToServerUrl,Boolean ProposeAddToFavorites,Integer ForceDelay);
8348 Boolean const Authentication_GetTokenResponseReceived;
8352 Integer const Authentication_ErrorCode;
8356 Text const Authentication_Token;
8360 Void SetViewerCount(Integer ViewerCount);
8364 Text const PlayerRestrictions;
8365};
8366
8375class CXmlRpc : public CNod {
8376public :
8380 Array<CXmlRpcEvent* const > PendingEvents;
8384 Void SendCallback(Text Param1,Text Param2);
8388 Void SendCallbackArray(Text Type,Array<Text> Data);
8392 Void SendCallback_BeginRound();
8396 Void SendCallback_EndRound();
8397};
8398
8405class CTaskResult : public CNod {
8406public :
8438 Void Cancel();
8439};
8440
8444class CGhost : public CNod {
8445public :
8449 Ident const Id;
8465 Text CountryPath;
8469 Text OverrideZoneIcon_ImageUrl;
8473 Void SetProfileInfoFromUser(CUser User);
8474};
8475
8483public :
8487 CGhost * const Ghost;
8488};
8489
8494public :
8495};
8496
8501public :
8502};
8503
8507class CSkinInfo : public CNod {
8508public :
8512 Text const Name;
8516 Text const Type;
8520 Text const Url;
8521};
8522
8526class CAccountTrophyGain : public CNod {
8527public :
8531 Text const AccountId;
8535 Text const WebServicesUserId;
8539 Integer const T1Count;
8543 Integer const T2Count;
8547 Integer const T3Count;
8551 Integer const T4Count;
8555 Integer const T5Count;
8559 Integer const T6Count;
8563 Integer const T7Count;
8567 Integer const T8Count;
8571 Integer const T9Count;
8575 Integer const TimeStamp;
8576};
8577
8581class CTrophyAchievement : public CNod {
8582public :
8586 Text const TrophyAchievementId;
8590 Text const TrophyAchievementType;
8591};
8592
8600class CMode : public CNod {
8601public :
8605 enum EMedal {
8606 None,
8607 Finished,
8608 Bronze,
8609 Silver,
8610 Gold,
8611 Author,
8612 };
8616 Array<CTaskResult* const > TaskResults;
8620 Void TaskResult_Release(Ident TaskId);
8624 Text ModeStatusMessage;
8628 CTitle * const LoadedTitle;
8632 Text const ServerLogin;
8636 Text const ServerName;
8640 Text const ServerModeName;
8644 Text const MapName;
8648 CMap * const Map;
8652 Text const MapPlayerModelName;
8656 Boolean const HasPodium;
8668 Text NeutralEmblemUrl;
8672 Text const ForcedClubLinkUrl1;
8676 Text const ForcedClubLinkUrl2;
8680 Void TweakTeamColorsToAvoidHueOverlap();
8684 Text ClientManiaAppUrl;
8688 Integer const Now;
8692 Integer const Period;
8696 Boolean MatchEndRequested;
8700 Boolean const ServerShutdownRequested;
8704 Boolean const MapLoaded;
8708 Void RequestLoadMap();
8712 Void RequestUnloadMap();
8720 Integer NextMapIndex;
8724 CUIConfigMgr * const UIManager;
8728 Void Hud_Load(Text ModuleName);
8732 CModulePlaygroundHud * const Hud;
8736 Void PassOn(CUIConfigEvent EventToPassOn);
8740 Void Discard(CUIConfigEvent EventToDiscard);
8744 Void Ladder_OpenMatch_Request();
8748 Void Ladder_AddPlayer(CScore PlayerScore);
8752 Void Ladder_OpenMatch_BeginRequest();
8756 Void Ladder_OpenMatch_AddPlayer(CScore PlayerScore);
8760 Void Ladder_OpenMatch_EndRequest();
8764 Void Ladder_CloseMatchRequest();
8768 Void Ladder_CancelMatchRequest();
8772 Boolean const Ladder_RequestInProgress;
8776 Void Ladder_SetResultsVersion(Integer Version);
8780 Void Ladder_SetMatchMakingMatchId(Integer MatchId);
8784 Void Ladder_EnableChallengeMode(Boolean Enable);
8788 Void Trophy_CompetitionMatch_AddResult(Text WebServicesUserId,Integer MatchRank,Integer TrophyRanking);
8792 Void Trophy_CompetitionMatch_ClearResultList();
8796 CTaskResult_AccountTrophyGainList Trophy_CompetitionMatch_SendResultList(Text CompetitionName,Text CompetitionStage,Text CompetitionStageStep,Text CompetitionMatchInfo);
8800 Void Trophy_LiveTimeAttackAchievement_AddResult(Text WebServicesUserId,Integer MatchRank,Integer TrophyRanking);
8804 Void Trophy_LiveTimeAttackAchievement_ClearResultList();
8808 CTaskResult_AccountTrophyGainList Trophy_LiveTimeAttackAchievement_SendResultList(Integer Duration);
8812 CServerAdmin * const ServerAdmin;
8816 Void AutoTeamBalance();
8820 Void Solo_SetNewRecord(CScore PlayerScore,CMode::EMedal PlayerScore);
8824 Boolean const Solo_NewRecordSequenceInProgress;
8828 CXmlRpc * const XmlRpc;
8832 CParsingManager * const Xml;
8836 CHttpManager * const Http;
8848 CScoreMgr * const ScoreMgr;
8852 CSystemPlatform * const System;
8856 CUserV2Manager * const UserMgr;
8860 Integer Synchro_AddBarrier();
8864 Boolean Synchro_BarrierReached(Integer Barrier);
8868 Boolean Users_AreAllies(CUser User1,CUser User2);
8872 Void Users_RequestSwitchToSpectator(CUser User);
8876 CUser Users_CreateFake(Text NickName,Integer RequestedTeam);
8880 Void Users_DestroyFake(CUser User);
8884 Void Users_SetNbFakeUsers(Integer NbTeam1,Integer NbTeam2);
8888 Void Users_DestroyAllFakes();
8892 Void ItemList_Begin();
8896 Boolean ItemList_Begin();
8900 Ident ItemList_Add(Text ModelName);
8904 Ident ItemList_AddWithSkin(Text ModelName,Text SkinNameOrUrl);
8908 Ident ItemList_AddWithSkin(Text ModelName,Text SkinNameOrUrl,Text SkinOptions);
8912 Void ItemList_End();
8916 Void DemoToken_StartUsingToken();
8920 Void DemoToken_StopUsingToken();
8924 Void DemoToken_GetAndUseToken(CUser User);
8928 Void ActionList_Begin();
8932 Boolean ActionList_Begin();
8936 Ident ActionList_Add(Text ActionName);
8940 Void ActionList_End();
8944 Boolean UseMinimap;
8948 Boolean Replay_AutoStart;
8952 Void Replay_Start();
8956 Void Replay_Stop();
8960 CModeTurretManager * const TurretsManager;
8964 CModeVehicleManager * const VehiclesManager;
8968 CActionManager * const ActionsManager;
8972 Void Activity_Match_Create_Begin(Text ActivityId);
8976 Void Activity_Match_Create_AddPlayer(Text WebServicesUserId,Text TeamName);
8980 Void Activity_Match_Create_AddTeam(Text TeamName);
8984 Void Activity_Match_Create_End();
8988 Void Activity_Match_ReportResult_Begin();
8992 Void Activity_Match_ReportResult_SetPlayerResult(Text WebServicesUserId,Integer Rank,Integer Score);
8996 Void Activity_Match_ReportResult_SetTeamResult(Text TeamName,Integer Rank,Integer Score);
9000 Void Activity_Match_ReportResult_End();
9004 Boolean EnableGhostRecording;
9008 Array<CGhost* const > Ghosts;
9012 Void Ghost_Release(Ident GhostId);
9016 Void GhostDriver_Playlist_Clear(CPlayer Player);
9020 Void GhostDriver_Playlist_Add(CPlayer Player,CGhost Ghost);
9024 Void GhostDriver_UploadLimits_Begin();
9028 Void GhostDriver_UploadLimits_AddLevel(Integer TeamLevel);
9032 CWebServicesTaskResult_GhostDriver_UploadLimits GhostDriver_UploadLimits_End();
9036 Void GhostDriver_Upload_Begin(Integer TeamLevel);
9040 Void GhostDriver_Upload_TeamMember_Begin();
9044 Void GhostDriver_Upload_AddGhost(CGhost Ghost);
9048 Void GhostDriver_Upload_TeamMember_End();
9052 CTaskResult GhostDriver_Upload_End();
9056 Void GhostDriver_Download_Begin();
9060 Void GhostDriver_Download_AddRange(Integer TeamLevelMin,Integer TeamLevelMax,Integer Count);
9064 CWebServicesTaskResult_GhostDriver_Download GhostDriver_Download_End();
9068 CTaskResult_MapRecordList MapRecord_GetListByMapAndPlayerList(Ident UserId,Array<Text> WebServicesUserIdList,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
9072 Void GameScene_ResetAll();
9076 Text Dbg_DumpDeclareForVariables(CNod Nod,Boolean StatsOnly);
9080 Integer const UiUpdatePeriod;
9081};
9082
9091class CSmPlayer : public CPlayer {
9092public :
9096 enum ESpawnStatus {
9097 NotSpawned,
9098 Spawning,
9099 Spawned,
9100 };
9104 CSmScore * const Score;
9108 CSmPlayer::ESpawnStatus const SpawnStatus;
9112 Integer const StartTime;
9116 Integer EndTime;
9120 Array<Integer> RaceWaypointTimes;
9128 Array<Integer> CurrentLapWaypointTimes;
9132 Array<Integer> PreviousLapWaypointTimes;
9136 Integer const CurrentLapNumber;
9140 Integer const CurrentRaceTime;
9144 Integer const CurrentLapTime;
9148 Integer const CurrentRaceRespawns;
9152 Integer const CurrentLapRespawns;
9160 Integer ActionWheelSelectedSlotIndex;
9164 Integer Armor;
9168 Integer ArmorMax;
9172 Integer ArmorGain;
9176 Integer ArmorReplenishGain;
9184 Integer Stamina;
9188 Integer const StaminaMaxValue;
9212 Boolean AllowWallJump;
9216 Boolean AllowProgressiveJump;
9220 Boolean UseAlternateWeaponVisual;
9224 Ident ForceModelId;
9228 Boolean IsHighlighted;
9236 Vec3 ForceColor;
9244 Text Dossard_Number;
9248 Text Dossard_Trigram;
9252 Vec3 Dossard_Color;
9260 Real ForceLinearHue;
9264 Boolean ForceLightTrail;
9268 Boolean HasShield;
9272 Boolean const IsInVehicle;
9276 Boolean IsStuck;
9284 Integer const CurrentClan;
9288 Integer const IdleDuration;
9292 Boolean const IsEntityStateAvailable;
9296 Vec3 const Position;
9300 Real const AimYaw;
9304 Real const AimPitch;
9308 Real const AimRoll;
9312 Vec3 const AimDirection;
9316 Vec3 const UpDirection;
9320 Vec3 const LeftDirection;
9324 Vec3 const Velocity;
9328 Real const Speed;
9332 Boolean const IsUnderground;
9336 Boolean const IsTouchingGround;
9340 Boolean const IsInAir;
9344 Boolean const IsInWater;
9348 Boolean const IsInOffZone;
9352 Boolean const IsOnTech;
9356 Boolean const IsOnTechGround;
9360 Boolean const IsOnTechLaser;
9364 Boolean const IsOnTechArrow;
9368 Boolean const IsOnTechNucleus;
9372 Boolean const IsOnTechArmor;
9376 Boolean const IsOnTechSafeZone;
9380 Boolean const IsOnTechTeleport;
9384 Boolean const IsOnTechNoWeapon;
9388 Boolean const IsPowerJumpActivable;
9392 Boolean const IsTeleportActivable;
9396 Boolean const IsAttractorActivable;
9400 Integer const NbActiveAttractors;
9404 Boolean const IsCapturing;
9408 CSmMapLandmark * const CapturedLandmark;
9416 CModeVehicle * const Vehicle;
9420 Boolean const IsFakePlayer;
9424 Boolean const IsBot;
9432 Boolean TrustClientSimu;
9436 CSmPlayerDriver * const Driver;
9456 Real const Upwardness;
9460 Real const Distance;
9464 Integer const DisplaySpeed;
9468 Real const InputSteer;
9472 Real const InputGasPedal;
9476 Boolean const InputIsBraking;
9480 Real const EngineRpm;
9484 Integer const EngineCurGear;
9488 Real const EngineTurboRatio;
9492 Integer const WheelsContactCount;
9496 Integer const WheelsSkiddingCount;
9500 Integer const FlyingDuration;
9504 Integer const SkiddingDuration;
9508 Real const SkiddingDistance;
9512 Real const FlyingDistance;
9520 Integer const HandicapNoGasDuration;
9524 Integer const HandicapForceGasDuration;
9528 Integer const HandicapNoBrakesDuration;
9532 Integer const HandicapNoSteeringDuration;
9536 Integer const HandicapNoGripDuration;
9537};
9538
9545class CSmModeEvent : public CBaseEvent {
9546public :
9550 enum EType {
9551 Unknown,
9552 OnShoot,
9553 OnHit,
9554 OnNearMiss,
9555 OnArmorEmpty,
9556 OnCapture,
9557 OnShotDeny,
9558 OnFallDamage,
9559 OnCommand,
9560 OnPlayerAdded,
9561 OnPlayerRemoved,
9562 OnPlayerRequestRespawn,
9563 OnActionCustomEvent,
9564 OnActionEvent,
9565 OnPlayerTouchesObject,
9566 OnPlayerThrowsObject,
9567 OnPlayerTriggersSector,
9568 OnPlayerTriggersWaypoint,
9569 OnPlayerRequestActionChange,
9570 OnVehicleArmorEmpty,
9571 OnVehicleCollision,
9572 OnVehicleVsVehicleCollision,
9573 OnPlayerRequestItemInteraction,
9574 OnStuntFigure,
9575 };
9579 enum EActionSlot {
9580 Slot_A,
9581 Slot_B,
9582 Slot_C,
9583 Slot_D,
9584 Slot_E,
9585 Slot_F,
9586 Slot_G,
9587 Slot_H,
9588 };
9592 enum EActionInput {
9593 Weapon,
9594 Secondary,
9595 Movement,
9596 QuickAccess1,
9597 QuickAccess2,
9598 QuickAccess3,
9599 QuickAccess4,
9600 QuickAccess5,
9601 QuickAccess6,
9602 QuickAccess7,
9603 QuickAccess8,
9604 QuickAccess9,
9605 QuickAccess0,
9606 Consumable1,
9607 Consumable2,
9608 None,
9609 };
9613 CSmModeEvent::EType const Type;
9617 CSmPlayer * const Player;
9621 Integer Damage;
9625 Integer const VictimShield;
9629 CEntity * const VictimEntity;
9633 Integer ShooterPoints;
9637 CEntity * const ShooterEntity;
9641 Integer const ShooterClan;
9645 Real const Height;
9649 Integer const UserData;
9653 Vec3 const ItemPosition;
9657 Real const MissDist;
9661 Integer const WeaponNum;
9665 Boolean const ShooterUsedAction;
9669 Integer const ShooterWeaponNum;
9673 CSmModeEvent::EActionSlot const ShooterActionSlot;
9677 Text const ShooterActionId;
9681 Boolean const VictimUsedAction;
9685 Integer const VictimWeaponNum;
9689 CSmModeEvent::EActionSlot const VictimActionSlot;
9693 Text const VictimActionId;
9697 CSmModeEvent::EActionSlot const ActionSlot;
9701 CSmModeEvent::EActionInput const ActionInput;
9705 Text const ActionId;
9709 Text const Param1;
9713 Array<Text> Param2;
9717 CSmObject * const Object;
9721 Integer const WaypointTime;
9725 Integer const WaypointLapTime;
9729 Boolean const IsFinish;
9733 Boolean const IsNewLap;
9737 CSmMapLandmark * const Landmark;
9741 CUser * const User;
9745 Boolean const PlayerWasSpawned;
9749 Boolean const PlayerWasDisconnected;
9753 Boolean const PlayerWasInLadderMatch;
9757 Vec3 const PlayerLastPosition;
9761 Vec3 const PlayerLastAimDirection;
9765 Boolean const GiveUp;
9769 Boolean const RegressRespawn;
9773 Text const CommandName;
9777 Boolean const CommandValueBoolean;
9781 Integer const CommandValueInteger;
9785 Real const CommandValueReal;
9789 Text const CommandValueText;
9793 Vec2 const CommandValueVec2;
9797 Vec3 const CommandValueVec3;
9801 Int2 const CommandValueInt2;
9805 Int3 const CommandValueInt3;
9809 Integer const ActionChange;
9813 CStuntFigure * const StuntFigure;
9814};
9815
9819class CSmMapBase : public CNod {
9820public :
9824 Integer Clan;
9828 Boolean IsActive;
9832 Integer const NumberOfCollectors;
9833};
9834
9843public :
9847 CSmMapBase * const Base;
9851 CSmMapGate * const Gate;
9855 CSmMapGauge * const Gauge;
9856};
9857
9866class CSmScore : public CScore {
9867public :
9871 Integer TeamNum;
9875 Integer Points;
9879 Integer RoundPoints;
9883 Integer NbRespawnsRequested;
9887 Integer const NbEliminationsInflicted;
9891 Integer const NbEliminationsTaken;
9895 Integer const DamageInflicted;
9899 Integer const DamageTaken;
9903 Array<Integer> BestRaceTimes;
9907 Array<Integer> PrevRaceTimes;
9911 Array<Integer> BestLapTimes;
9915 Array<Integer> PrevLapTimes;
9919 Integer BestRaceNbRespawns;
9923 Integer PrevRaceNbRespawns;
9924};
9925
9929class CMapSpawn : public CNod {
9930public :
9931};
9932
9939class CModeTurret : public CEntity {
9940public :
9944 Integer Armor;
9948 Integer ArmorMax;
9952 CPlayer * const Owner;
9953};
9954
9961class CModeVehicle : public CEntity {
9962public :
9966 Integer Armor;
9970 Integer ArmorMax;
9974 Vec3 const Position;
9978 Real const Pitch;
9982 Real const Roll;
9986 Vec3 const Left;
9990 Vec3 const Up;
9994 Vec3 const Dir;
9998 Vec3 const Velocity;
10002 Integer Clan;
10006 Real AccelCoef;
10010 Real const AccelInput;
10014 Void SetEngineActivated(Boolean IsActivated);
10015};
10016
10020class CMapBotPath : public CNod {
10021public :
10025 Integer const Clan;
10029 Array<Vec3> Path;
10033 Boolean const IsFlying;
10037 Ident const BotModelId;
10038};
10039
10043class CMapBotSpawn : public CNod {
10044public :
10048 Boolean const IsFlying;
10052 Ident const BotModelId;
10053};
10054
10058class CEntity : public CNod {
10059public :
10064};
10065
10069class CMapWaypoint : public CNod {
10070public :
10074 Boolean const IsFinish;
10078 Boolean const IsMultiLap;
10079};
10080
10087class CSmObject : public CEntity {
10088public :
10092 enum EStatus {
10093 OnPlayer,
10094 OnAnchor,
10095 InWorld,
10096 Unspawned,
10097 };
10101 CSmObject::EStatus const Status;
10105 Ident const ModelId;
10109 Void SetAnchor(CMapObjectAnchor ObjectAnchor);
10113 Void SetPlayer(CSmPlayer Player);
10117 Void SetPosition(Vec3 Position);
10121 Void SetPositionAndVel(Vec3 Position,Vec3 Vel);
10125 Void SetUnspawned();
10133 CSmMapLandmark * const AnchorLandmark;
10137 Vec3 const Position;
10141 Vec3 const Vel;
10145 Integer MachineState;
10149 Boolean Throwable;
10153 Ident const ThrowLatestPlayerId;
10154};
10155
10159class CGhostManager : public CNod {
10160public :
10164 Ident Ghost_Add(CGhost Ghost);
10168 Ident Ghost_Add(CGhost Ghost,Boolean IsGhostLayer);
10172 Ident Ghost_Add(CGhost Ghost,Boolean IsGhostLayer,Integer TimeOffset);
10176 Ident Ghost_AddWaypointSynced(CGhost Ghost,Boolean IsGhostLayer);
10180 Boolean Ghost_IsReplayOver(Ident GhostInstanceId);
10184 Boolean Ghost_IsVisible(Ident GhostInstanceId);
10188 Void Ghost_Remove(Ident GhostInstanceId);
10192 Void Ghost_RemoveAll();
10196 Void Ghost_SetDossard(Ident GhostInstanceId,Text Dossard);
10200 Void Ghost_SetDossard(Ident GhostInstanceId,Text Dossard,Vec3 Color);
10201};
10202
10211public :
10215 enum ValidationStatus {
10216 NotValidable,
10217 Validable,
10218 Validated,
10219 };
10223 Boolean CustomEditAnchorData;
10227 Void ClearMapMetadata();
10231 CMapType::ValidationStatus ValidationStatus;
10235 Text ValidabilityRequirementsMessage;
10239 Boolean ValidationEndRequested;
10243 Boolean ValidationEndNoConfirm;
10247 Void RequestEnterPlayground();
10251 Void RequestLeavePlayground();
10255 Boolean const IsSwitchedToPlayground;
10259 CUIConfigMgr * const UIManager;
10264};
10265
10269class CAction : public CNod {
10270public :
10271};
10272
10280public :
10284 enum EType {
10285 OnHitPlayer,
10286 OnProjectileEnd,
10287 OnProjectileDestroyed,
10288 OnHitObject,
10289 OnHitShield,
10290 OnHitVehicle,
10291 OnShieldEnd,
10292 OnHitTurret,
10293 OnInputChange,
10294 OnFocusedScroll,
10295 };
10299 enum EInputChange {
10300 IsActive,
10301 Focused_Main,
10302 Focused_Secondary,
10303 Focused_QuickAccess1,
10304 Focused_QuickAccess2,
10305 Focused_QuickAccess3,
10306 Focused_QuickAccess4,
10307 Focused_QuickAccess5,
10308 Focused_QuickAccess6,
10309 Focused_QuickAccess7,
10310 Focused_QuickAccess8,
10311 Focused_QuickAccess9,
10312 Focused_QuickAccess0,
10313 Focused_Consumable1,
10314 Focused_Consumable2,
10315 };
10319 CSmActionEvent::EType const Type;
10323 Ident const ProjectileModelId;
10327 Integer const ProjectileStartDate;
10331 Integer const Damage;
10335 Integer const ContextId;
10339 Vec3 const Position;
10343 Vec3 const Direction;
10347 Vec3 const Normal;
10351 CEntity * const Victim;
10355 Integer const Shield;
10359 CSmActionEvent::EInputChange const Input;
10363 Integer const ScrollDelta;
10364};
10365
10374public :
10378 enum EInGameMenuResult {
10379 Resume,
10380 Quit,
10381 NormalMenu,
10382 AdvancedMenu,
10383 ServerSettings,
10384 };
10388 enum EUISound {
10389 Default,
10390 Silence,
10391 StartMatch,
10392 EndMatch,
10393 StartRound,
10394 EndRound,
10395 PhaseChange,
10396 TieBreakPoint,
10397 TiePoint,
10398 VictoryPoint,
10399 Capture,
10400 TimeOut,
10401 Notice,
10402 Warning,
10403 PlayerEliminated,
10404 PlayerHit,
10405 Checkpoint,
10406 Finish,
10407 Record,
10408 ScoreProgress,
10409 RankChange,
10410 Bonus,
10411 FirstHit,
10412 Combo,
10413 PlayersRemaining,
10414 Custom1,
10415 Custom2,
10416 Custom3,
10417 Custom4,
10418 };
10422 Integer GameTime;
10426 CPlaygroundClient * const Playground;
10430 CUIConfig const * const UI;
10446 Boolean UseClans;
10450 Boolean UseForcedClans;
10458 CMap * const Map;
10462 Void ShowCurChallengeCard();
10466 Void ShowModeHelp();
10470 Void CopyServerLinkToClipBoard();
10474 Void JoinTeam1();
10478 Void JoinTeam2();
10494 Void ShowProfile(Text Player);
10498 Void ShowInGameMenu();
10502 Void CloseInGameMenu(CMlScriptIngame::EInGameMenuResult Result);
10506 Void CloseScoresTable();
10510 Boolean IsInGameMenuDisplayed;
10514 Text CurrentServerLogin;
10518 Text CurrentServerName;
10522 Text CurrentServerDesc;
10526 Text CurrentServerJoinLink;
10530 Text CurrentServerModeName;
10534 Integer SplitScreenNum;
10538 Integer SplitScreenCount;
10542 Boolean SplitScreenIsHorizontal;
10546 Void PlayUiSound(CMlScriptIngame::EUISound Sound,Integer SoundVariant,Real Volume);
10547};
10548
10553public :
10557 Integer GameTime;
10573 Boolean UseClans;
10577 Boolean UseForcedClans;
10581 CMap const * const Map;
10589 Boolean IsInGameMenuDisplayed;
10593 Text CurrentServerLogin;
10597 Text CurrentServerName;
10601 Text CurrentServerDesc;
10605 Text CurrentServerJoinLink;
10609 Text CurrentServerModeName;
10613 Integer SplitScreenNum;
10617 Integer SplitScreenCount;
10621 Boolean SplitScreenIsHorizontal;
10622};
10623
10627class CGameUserVoiceChat : public CNod {
10628public :
10632 enum EMuteSetting {
10633 Muted,
10634 NotMuted,
10635 };
10639 CGameUserVoiceChat::EMuteSetting MuteSetting;
10643 Boolean const IsLocal;
10647 Boolean const IsMuted;
10651 Boolean const MuteChangePending;
10655 Boolean const IsSpeaking;
10659 Boolean const IsConnected;
10663 Boolean const Supported;
10667 CUser * const MatchingPlayerInfo;
10668};
10669
10674public :
10675};
10676
10681public :
10682};
10683
10687class CAudioSettings : public CNod {
10688public :
10692 Integer DirtyCounter;
10696 Array<Text> Devices;
10700 Text Device_Current;
10704 Text Device_NextApply;
10708 Integer const VoiceChat_Devices_DirtyCounter;
10712 Array<Text> VoiceChat_Devices_In;
10716 Array<Text> VoiceChat_Devices_Out;
10720 Text const VoiceChat_Device_In_Current;
10724 Text const VoiceChat_Device_Out_Current;
10728 Text VoiceChat_Device_In_NextApply;
10732 Text VoiceChat_Device_Out_NextApply;
10736 Real VoiceChat_SpeakerVolume;
10740 NSystemConfig::EVoiceDetectionMode VoiceChat_VoiceDetection_Mode;
10745};
10746
10751public :
10755 CUILayer * const ComponentLayer;
10759 Void Hide();
10763 Void Show();
10764};
10765
10769class CModulePlayground : public CNod {
10770public :
10774 Void Hide();
10778 Void Hide(CUIConfig UIConfig);
10782 Void Show();
10786 Void Show(CUIConfig UIConfig);
10790 Boolean IsVisible(CUIConfig UIConfig);
10791};
10792
10796class CModuleMenuPage : public CNod {
10797public :
10801 Text const Name;
10806};
10807
10815public :
10819 enum EModuleType {
10820 Undefined,
10821 Hud,
10822 Inventory,
10823 Store,
10824 ScoresTable,
10825 Equipment,
10826 MenuBase,
10827 MenuPage,
10828 Chrono,
10829 SpeedMeter,
10830 PlayerState,
10831 TeamState,
10832 };
10836 Void NewModule(CEditorModule::EModuleType ModuleType);
10840 Void OpenModule(Text Path);
10844 Void Save();
10848 Void SaveAs(Text Path);
10852 Void SaveCopyAs(Text Path);
10856 Void ForceExit();
10860 Void SetPreviewBackground(Text Url);
10864 Void ReloadPreview();
10868 CModuleMenuModel * const EditedMenu;
10872 CModuleMenuPageModel * const EditedMenuPage;
10876 CModulePlaygroundHudModel * const EditedPlaygroundHud;
10880 Void EditedPlaygroundHud_SetPreviewContext(Ident ContextId);
10884 Void FileBrowser_Open();
10888 Void FileBrowser_Save();
10892 Boolean const FileBrowser_IsRunning;
10896 Text const FileBrowser_FilePath;
10904 Boolean IsPreviewMode;
10905};
10906
10914public :
10918 enum EEdgesDisplay {
10919 Any,
10920 Borders,
10921 None,
10922 };
10926 enum EEdgesConstraint {
10927 Any,
10928 Adjacent,
10929 Closed,
10930 };
10934 enum EElemType {
10935 Vertex,
10936 Edge,
10937 Face,
10938 EVoxel,
10939 Any,
10940 };
10944 enum EInteraction {
10945 Creation,
10946 Pick,
10947 PickJoint,
10948 VoxelPickDrag_Base,
10949 VoxelPickDrag_Creation,
10950 VoxelPickDrag_Delete,
10951 VoxelPickDrag_Select,
10952 VoxelPickDrag_Pick,
10953 VoxelPickDrag_SelectTranslation,
10954 VoxelPickDrag_SelectRotation,
10955 VoxelPickDrag_Paste,
10956 Selection,
10957 Translation,
10958 PickTranslation,
10959 ExtrudeTranslation,
10960 Rotation,
10961 PickRotation,
10962 Scale,
10963 Curve2D,
10964 Merge,
10965 Split,
10966 Mirror,
10967 Paste,
10968 PasteMaterial,
10969 BlocTransformation,
10970 None,
10971 };
10975 enum ETexCoordLayer {
10976 Lightmap,
10977 };
10981 enum EMaterialFilterCriterion {
10982 IsAutomatic,
10983 IsBadForHorizontalFaces,
10984 IsBadForVerticalFaces,
10985 };
10989 enum EFilterKind {
10990 NoFilter,
10991 PassIfMatches,
10992 CutIfMatches,
10993 };
10997 enum EUVEditorMode {
10998 UV,
10999 Atlas_ApplyOnClic,
11000 Atlas_SelectOnClic,
11001 };
11005 enum EUVEditorProjectionType {
11006 Planar,
11007 Curve2D,
11008 Cylindrical2D,
11009 Cubic,
11010 Polyedric,
11011 Cylindrical,
11012 ApplyOnlyMaterial,
11013 };
11017 enum ELayerType {
11018 AddGeometry,
11019 SubdivideSmooth,
11020 Translation,
11021 Rotation,
11022 Scale,
11023 Mirror,
11024 MoveToGround,
11025 Extrude,
11026 Subdivide,
11027 Chaos,
11028 Smooth,
11029 BorderTransition,
11030 BlocTransfo,
11031 Voxels,
11032 TriggerShape,
11033 RespawnPos,
11034 Sector,
11035 Light,
11036 LightModel,
11037 WaterShape,
11038 None,
11039 };
11043 enum ETitleCoreType {
11044 TrackMania,
11045 ShootMania,
11046 };
11050 Boolean GoToMaterialEditor;
11054 Boolean IsCreateMaterial;
11058 Integer Layers_GetCount();
11062 Ident Layers_GetLayerIdFromIndex(Integer LayerIndex);
11066 Text Layers_GetLayerNameFromIndex(Integer LayerIndex);
11070 CEditorMesh::ELayerType Layers_GetLayerTypeFromIndex(Integer LayerIndex);
11074 Boolean Layers_GetLayerGeneratableFromIndex(Integer LayerIndex);
11078 Void Layers_SetLayerGeneratableFromIndex(Integer LayerIndex,Boolean LayerGeneratability);
11082 Void Layers_AddLayer(CEditorMesh::ELayerType LayerType);
11086 Ident Layers_GetLayerIdSelected();
11090 Void Layers_SetLayerIdSelected(Ident LayerId);
11094 CEditorMesh::ELayerType Layers_GetLayerSelectedType();
11098 Integer Layers_GetLayerSelectedIndex();
11102 CEditorMesh::ELayerType Layers_GetEditedLayerType();
11106 Text Layers_GetLayerSelectedName();
11110 Void Layers_EditMask(Integer LayerIndex);
11114 Void Layers_EditMaskValidate(Integer LayerIndex);
11118 Void Layers_MoveSelectedLayerUp();
11122 Void Layers_MoveSelectedLayerDown();
11126 Void Layers_EditSelectedLayer(Boolean RegenerateSolid);
11130 Void Layers_CloseEditSelectedLayer();
11134 Void Layers_DeleteSelectedLayer();
11138 Integer Transitions_GetCount();
11142 Void Transitions_AddTransition(Text TransitionName,Integer TransitionPosition,Real TransitionSize);
11146 Void Transitions_DeleteCurrentTransition();
11150 Integer Transitions_GetTransitionSelectedIndex();
11154 Void Transitions_SetTransitionSelectedIndex(Integer TransitionIndex);
11158 Integer Transitions_GetTransitionCurrentPage();
11162 Void Transitions_SetTransitionCurrentPage(Integer TransitionCurrentPage);
11166 Text Transitions_GetTransitionNameFromIndex(Integer TransitionIndex);
11170 Void Transitions_SetTransitionNameFromIndex(Integer TransitionIndex,Real TransitionName);
11174 Boolean Transitions_GetTransitionVisibilityFromIndex(Integer TransitionIndex);
11178 Void Transitions_SetTransitionVisibilityFromIndex(Integer TransitionIndex,Boolean TransitionVisibility);
11182 Real Transitions_GetTransitionSizeFromIndex(Integer TransitionIndex);
11186 Void Transitions_SetTransitionSizeFromIndex(Integer TransitionIndex,Real TransitionSize);
11190 Integer Transitions_GetTransitionPositionFromIndex(Integer TransitionIndex);
11194 Void Transitions_SetTransitionPositionFromIndex(Integer TransitionIndex,Integer TransitionPosition);
11198 Boolean IsEditingLayer;
11202 Integer SubdivideSmooth_NbSteps;
11206 Real LayerValueAxisX;
11210 Real LayerValueAxisY;
11214 Real LayerValueAxisZ;
11218 Boolean LayerIndep;
11222 Real LayerValueParam1;
11226 Real LayerValueParam2;
11230 Real LayerValueParam3;
11234 Real LayerValueParam4;
11238 Boolean LayerIndexAxisX;
11242 Boolean LayerIndexAxisY;
11246 Boolean LayerIndexAxisZ;
11250 Boolean Layer_IsVisible;
11254 Boolean Layer_IsCollidable;
11258 Text LayerName;
11262 Boolean LayerGeneratable;
11266 Boolean AddTransitionInProgress;
11270 Text NewTransitionName;
11274 Integer NewTransitionPosition;
11278 Real NewTransitionSize;
11282 Integer RotateAxis;
11286 Boolean const Tmp_UseParts;
11290 Boolean const IsDebug;
11294 Boolean CameraEatingInputsScript;
11298 Integer const VertexCount;
11302 Integer const EdgeCount;
11306 Integer const FaceCount;
11310 Void EditionBox_SetStep(Real Step);
11314 Boolean const EditionBox_IsPlaneOriented;
11318 Real const Scale;
11322 Real const Step;
11326 Real const Size;
11330 Integer const RotationStep;
11334 Real const RotationValue;
11338 Real const ScalingStep;
11342 Real const ScalingRatio;
11346 Boolean DisplayVertices;
11350 Boolean DisplayFaces;
11354 Boolean DisplayJoints;
11358 CEditorMesh::EEdgesDisplay DisplayEdges;
11362 Void EditedMesh_Clear();
11366 Void EditedMesh_Simplify();
11370 Void EditedMesh_SimplifySelection();
11374 Void EditedMesh_Lod(Real FacesRatio);
11378 Void UVUnwrap(Ident SetHandle,CEditorMesh::ETexCoordLayer ETexCoordLayer);
11382 Void Undo();
11386 Void Redo();
11390 Void SwitchPlane();
11394 Void GridSnap_SetActive(Boolean IsActive);
11398 Boolean const GridSnap_IsActive;
11402 Vec3 PickInfo_GetNormal();
11406 Vec3 PickInfo_GetPosition();
11410 Ident PickInfo_GetAnchorId();
11414 Real PickInfo_GetEdgeLength();
11418 Vec3 PickInfo_GetNextVertexPosition();
11422 Ident PickInfo_GetMaterial();
11426 Text PickInfo_GetError();
11430 Void Part_SetAnchorPos(Vec3 Position);
11434 Void Part_SetIsJoint(Boolean IsJoint);
11438 Void Part_ClearAnchor();
11442 Void Joint_Add(Vec3 Position);
11446 Void Joint_Link(Ident IdChild,Ident IdParent);
11450 Void Anchor_Remove(Ident Id);
11454 Boolean IsUsingPhysicMatLib;
11458 Integer const MaterialGameplayIdNumber;
11462 Integer const MaterialsUpdateId;
11466 Array<Ident> MaterialIds;
11470 Array<Ident> MaterialPhysicsIds;
11474 Array<Ident> MaterialDynaIds;
11478 Array<Text> MaterialNames;
11482 Array<Text> MaterialPhysicsNames;
11486 Array<Integer> MaterialPhysics_GameplayRemap;
11490 Array<Text> MaterialDynaNames;
11494 Array<Vec3> MaterialLastUsedColors;
11498 Array<Vec3> MaterialBaseColors;
11502 Vec3 CurrentColorForSpecialMaterials;
11506 Ident Material_GetMaterialIdSelected();
11510 Void Material_SetMaterialIdSelected(Ident MaterialEditorId);
11514 Ident MaterialDyna_GetMaterialIdSelected();
11518 Void MaterialDyna_SetMaterialIdSelected(Ident DynaMaterialType);
11522 Integer Material_GetSubTexIndexSelected();
11526 Integer Material_MaterialLibGetCount();
11530 Void Material_SetDefault(Ident MaterialId);
11534 Ident Material_GetDefault();
11538 Ident MaterialPhysic_GetDefault();
11542 Integer MaterialPhysic_GetIndex();
11546 Integer MaterialPhysic_GetGameplayId(Ident MaterialId);
11550 CImage MaterialPhysic_GetNextBitmap();
11554 Ident MaterialDyna_GetDefault();
11558 Void MaterialDyna_SetDefault(Ident MaterialId);
11562 CImage Material_GetBitmapBase(Ident MaterialId);
11566 CImage Material_GetBitmap(Ident MaterialId);
11570 CImage MaterialDyna_GetBitmap(Ident MaterialId);
11574 Boolean Material_IsSpecialColored(Ident MaterialId);
11578 Boolean Material_MatchesCriterion(Ident MaterialId,CEditorMesh::EMaterialFilterCriterion ResultSetHandle);
11582 Void Material_SetFilter(CEditorMesh::EMaterialFilterCriterion Criterion,CEditorMesh::EFilterKind FilterKind);
11586 CEditorMesh::EFilterKind Material_GetFilter(CEditorMesh::EMaterialFilterCriterion Criterion);
11590 Void Material_ClearFilters();
11594 Void Material_UVEditor_SetIsRotation(Boolean IsRotation);
11598 Void Material_UVEditor_SetIsScale(Boolean IsScale);
11602 Void Material_UVEditor_SetIsScale1D(Boolean IsScale);
11606 Void Material_UVEditor_Open(Ident MaterialId,CMlQuad LocationQuad);
11610 Void Material_UVEditor_Close();
11614 Boolean Material_UVEditor_IsRunning();
11618 Void Material_UVEditor_SetMode(CEditorMesh::EUVEditorMode Mode);
11622 CEditorMesh::EUVEditorMode Material_UVEditor_GetMode();
11626 Void Material_UVEditor_SetProjectionType(CEditorMesh::EUVEditorProjectionType ProjectionType);
11630 Boolean Material_IsGameMaterial();
11634 Boolean Material_IsCustomLinkFull(Ident MaterialId);
11638 Void Material_UVEditor_Apply();
11642 Void Material_CopyMaterial(Ident SetHandle);
11646 Void Material_PasteMaterial(Ident SetHandle);
11650 Integer const Material_Atlas_SelectedSubTexIndex;
11654 CEditorMesh::EInteraction const CurrentInteraction;
11658 Void Interaction_Close();
11662 Void Interaction_SetPreview(Ident SetToPreview);
11666 Integer const CreationElemsCount;
11670 Boolean Interaction_StartCreation(Ident CreationSetHandle,CEditorMesh::EElemType ElemType,Ident SetToPickFromHandle);
11674 Void Interaction_Creation_GetElems(Ident ResultSetHandle);
11678 Void Interaction_Creation_ClearParams();
11682 Void Interaction_Creation_SetEdgesConstraint(CEditorMesh::EEdgesConstraint EdgesConstraint);
11686 Void Interaction_Creation_SetAutoMerge(Boolean AutoMerge);
11690 Boolean Interaction_StartPaste();
11694 Boolean Interaction_StartBlocTransformation(Ident TransformationSetHandle);
11698 Boolean Interaction_StartCurve2D(Ident BordersSetHandle);
11702 Void Interaction_CloseCurve2D(Boolean CanDoCurve2D);
11706 Boolean Interaction_StartPick(CEditorMesh::EElemType ElemType,Ident SetToPickFrom);
11710 Boolean Interaction_StartPickJoint();
11714 Boolean Interaction_StartVoxelPickDrag_Base(CEditorMesh::EElemType ElemType);
11718 Boolean Interaction_StartVoxelPickDrag_Creation();
11722 Boolean Interaction_StartVoxelPickDrag_Delete();
11726 Boolean Interaction_StartVoxelPickDrag_Select(Ident SelectionSetHandle);
11730 Void Interaction_CloseVoxelPickDrag_Select();
11734 Boolean Interaction_StartVoxelPickDrag_Pick();
11738 Void Interaction_CloseVoxelPickDrag_Pick();
11742 Boolean Interaction_StartVoxelPickDrag_SelectTranslation();
11746 Boolean Interaction_StartVoxelPickDrag_SelectRotation();
11750 Boolean Interaction_StartVoxelPickDrag_Paste();
11754 Void CutVoxels();
11758 Void CopyVoxels();
11762 Boolean Interaction_StartMerge(Ident MergeSetHandle);
11766 Boolean Interaction_StartMirror(Ident SetHandle);
11770 Void Interaction_Selection_ClearParams();
11774 Void Interaction_Selection_SetUseParts(Boolean UseParts);
11778 Void Interaction_Selection_SetCanEnterLeaf(Boolean CanEnterLeaf);
11782 Boolean Interaction_StartSelection(Ident SelectionSetHandle,CEditorMesh::EElemType ElemType,Ident SelectionSetToPickFrom,Boolean IsFromALayer,Boolean AllowDoubleClick);
11786 Void Interaction_CloseSelection();
11790 Boolean Interaction_StartTranslation(Ident TranslationSetHandle);
11794 Boolean Interaction_StartPickTranslation(Ident TranslationSetHandle);
11798 Boolean Interaction_StartRotation(Ident RotationSetHandle);
11802 Boolean Interaction_StartPickRotation(Ident RotationSetHandle);
11806 Void Interaction_Rotation_SetStep(Real RotationStep);
11810 Boolean Interaction_StartPickScale(Ident ScalingSetHandle);
11814 Void Interaction_Scale_SetStep(Real ScalingStep);
11818 Boolean Interaction_StartSplit();
11822 Void Display_HighlightSet(Ident SetHandle);
11826 Void Display_ClearHighlighting();
11830 Boolean const Display_HideElemsByDistance_IsActive;
11834 Integer Display_HideElemsByDistance_Distance;
11838 Real Display_HideElemsByDistance_Opacity;
11842 Void Display_HideElemsByDistance_Start(Ident SetHandle);
11846 Void Display_HideElemsByDistance_Stop();
11850 Void Display_HideMap();
11854 Void Display_ShowMap();
11858 Void MergeAllSuperposedElements(Ident SetHandle);
11862 Ident const SelectionSet;
11866 Void Selection_Undo();
11870 Void Selection_Redo();
11874 Void Selection_Invert();
11878 Void Selection_SelectAllByMaterial();
11882 Ident SetOfElements_Create();
11886 Void SetOfElements_CopyFrom(Ident DestinationSet,Ident SourceSet);
11890 Void SetOfElements_Append(Ident DestinationSet,Ident SourceSet);
11894 Void SetOfElements_Destroy(Ident SetHandle);
11898 Void SetOfElements_Empty(Ident SetHandle);
11902 Void SetOfElements_SetAllElements(Ident SetHandle);
11906 Void SetOfElements_SetAllFaces(Ident SetHandle);
11910 Void SetOfElements_DeleteElements(Ident SetHandle);
11914 Void SetOfElements_DeleteElements(Ident SetHandle,Boolean Spread);
11918 Boolean SetOfElements_HasHorizontalFaces(Ident SetHandle);
11922 Boolean SetOfElements_HasVerticalFaces(Ident SetHandle);
11926 Integer SetOfElements_GetElemsCount(Ident SetHandle);
11930 Integer SetOfElements_GetVerticesCount(Ident SetHandle);
11934 Integer SetOfElements_GetEdgesCount(Ident SetHandle);
11938 Integer SetOfElements_GetFacesCount(Ident SetHandle);
11942 Void ExtendSelectedSet(Ident SetHandle);
11946 Boolean GetBordersSet(Ident SetHandle,Ident SetBordersHandle);
11950 Void GetBordersVertexs(Ident SetHandle,Ident SetVertexHandle);
11954 Void SelectionSet_SelectAll();
11958 Void Curve2DPolygon(Ident FourVertexSetHandle,Ident Sethandle,Integer SubTexIndex);
11962 Void Preview_Clear();
11966 Void VoxelSpace_SetVec3(Vec3 Pos);
11970 Integer VoxelSpace_GetVoxelsCount();
11974 Void VoxelSpace_SelectAll();
11978 Void VoxelSpace_DeleteOneVoxel();
11982 Void VoxelSpace_DeleteSelection();
11986 Void VoxelSpace_ApplyMaterialToVoxel();
11990 Void VoxelSpace_GenerateMesh();
11994 Vec3 VoxelSpaceCenter;
11998 Vec3 VoxelSpaceAngle;
12002 Real VoxelSpaceStep;
12006 Boolean VoxelSpaceIsInteractive;
12010 Void SetOfElements_ProjectOnPlane(Ident SetHandle);
12014 Void SetOfElements_ProjectOnGround(Ident SetHandle,Real Height);
12018 Void SetOfElements_SplitEdgeWithVertex(Ident SetHandle);
12022 Void SetOfElements_CollapseEdgeWithVertex(Ident SetHandle);
12026 Void SetOfElements_Subdivide(Ident SetHandle);
12030 Void SetOfElements_Subdivide_Interpolation(Ident SetHandle);
12034 Void SetOfVertices_DrawCircle(Ident InputSetHandle,Ident ResultSetHandle);
12038 Void SetOfVertices_DrawDisc(Ident InputSetHandle,Ident ResultSetHandle);
12042 Void SetOfVertices_DrawCircle(Ident CenterSetHandle,Vec3 PointOnCircle,Ident ResultSetHandle);
12046 Void SetOfVertices_DrawIcosahedron(Ident InputSetHandle,Ident ResultSetHandle);
12050 Void SetOfVertices_DrawIcosahedron(Ident CenterSetHandle,Vec3 PointOnCircle,Ident ResultSetHandle);
12054 Void SetOfVertices_DrawIcosahedricSphere(Ident InputSetHandle,Ident ResultSetHandle);
12058 Void SetOfVertices_DrawPoly(Ident InputSetHandle,Ident ResultSetHandle,Integer VerticesCount);
12062 Void SetOfVertices_DrawPoly(Ident CenterSetHandle,Vec3 PointOnPoly,Ident ResultSetHandle,Integer VerticesCount);
12066 Void SetOfVertices_DrawSpline(Ident ControlSetHandle,Ident ResultSetHandle);
12070 Void SetOfVertices_Weld(Ident VerticesSetHandle);
12074 Void SetOfVertices_DrawBox(Ident ControlSetHandle,Ident ResultSetHandle);
12078 Void SetOfEdges_Fill(Ident SetHandle);
12082 Void SetOfEdges_Flip(Ident SetHandle,Ident ResultSetHandle);
12086 Void SetOfEdges_BorderExpand(Ident SetHandle);
12090 Void SetOfOneEdge_FaceLoopExpand(Ident SetHandle);
12094 Void SetOfOneEdge_EdgeLoopExpand(Ident SetHandle);
12098 Void SetOfOneFace_CutHole(Ident FaceSetHandle,Ident EdgesSetHandle);
12102 Void SetOfFaces_Extrude(Ident SetHandle,Ident ResultSetHandle);
12106 Void SetOfFaces_QuadsToTriangles(Ident SetHandle,Ident ResultSetHandle);
12110 Void SetOfFaces_TrianglesToQuads(Ident SetHandle,Ident ResultSetHandle);
12114 Void SetOfFaces_ApplyMaterial(Ident SetHandle,Ident MaterialId);
12118 Void SetOfFaces_PlanarExpand(Ident FacesSetHandle);
12122 Void SetOfFaces_ChangeOrientation(Ident FacesSetHandle);
12126 Array<Text> PrefabNames;
12130 Integer const PrefabNamesUpdateId;
12134 Integer PrefabListCurrentPage;
12138 Integer Prefab_TotalNb;
12142 Void Prefabs_Reload();
12146 Void Prefab_Export();
12150 Void Prefab_Import(Integer PrefabIndex);
12154 Boolean Parts_CanMergeParts();
12158 Boolean Parts_CanGroupParts();
12162 Boolean Parts_CanUngroupParts();
12166 Int3 Parts_GetOpsState();
12170 Void Parts_MergeSelectedParts();
12174 Void Parts_Group();
12178 Void Parts_UngroupSelectedParts();
12182 Void Cut();
12186 Void Copy();
12190 Void AddUndoState();
12194 Boolean AutoSave(Text FileName);
12198 Array<CEditorEvent* const > PendingEvents;
12202 Boolean MustClearLastSaveBuffer;
12206 Boolean const IsExperimental;
12210 CEditorMesh::ETitleCoreType GetTitleCoreType();
12211};
12212
12220public :
12224 Void Bindings_AddContext(Text ContextName);
12228 Void Bindings_AddBinding(Text ContextName,Text BindingScriptId,Text BindingDisplayName);
12232 Void Bindings_RemoveContext(Text ContextName);
12236 Void Bindings_RemoveBinding(Text ContextName,Text BindingName);
12240 Void Bindings_RequestInput(Text ContextName,Text BindingName);
12244 Boolean const Bindings_RequestInput_Done;
12248 Void Bindings_SetBindingScriptId(Text ContextName,Text BindingScriptId,Text NewBindingScriptId);
12252 Void Bindings_SetBindingDisplayName(Text ContextName,Text BindingScriptId,Text BindingDisplayName);
12256 Void Bindings_SetContextName(Text ContextName,Text NewContextName);
12260 Array<Text> BindingContexts;
12264 Void Bindings_GetContextBindings(Text ContextName);
12268 Array<Text> RequestedContextBindings;
12272 Text Bindings_GetBindingActionName(Text ContextName,Text BindingName);
12276 Text Bindings_GetBindingDisplayName(Text ContextName,Text BindingName);
12280 Array<CEditorEvent* const > PendingEvents;
12281};
12282
12287public :
12291 enum EMediaTrackerBlockType {
12292 Ghost,
12293 CameraCustom,
12294 CameraPath,
12295 Time,
12296 FxColors,
12297 Sound,
12298 Fog,
12299 TransitionFade,
12300 CameraEffectShake,
12301 CameraEffectScript,
12302 Stereo3d,
12303 DOF,
12304 ToneMapping,
12305 BloomHdr,
12306 DirtyLens,
12307 ColorGrading,
12308 FxCameraBlend,
12309 MusicEffect,
12310 TimeSpeed,
12311 TextBlock,
12312 Image,
12313 ColoringCapturable,
12314 ColoringBase,
12315 CameraGame,
12316 Trails,
12317 Manialink,
12318 EditingCut,
12319 CamFxInertialTracking,
12320 VehicleLight,
12321 Interface,
12322 Triangles2D,
12323 Triangles3D,
12324 CameraOrbital,
12325 OpponentVisibility,
12326 Spectators,
12327 };
12331 enum EMediaTrackerCopyType {
12332 None,
12333 Key,
12334 Block,
12335 };
12339 enum EMediaTrackerPasteType {
12340 None,
12341 KeyInfo,
12342 NewKey,
12343 BlockCurrentTrack,
12344 BlockNewTrack,
12345 };
12349 enum EMediaTrackerGhostRef {
12350 Author,
12351 Ghost1,
12352 Ghost2,
12353 Ghost3,
12354 };
12358 Real CurrentTimer;
12362 Boolean UseOrbitalInsteadOfFreeCam;
12366 Boolean UseClipCamWhenAvailable;
12370 Boolean CanUseClipCam;
12374 Real PlaySpeed;
12378 Real CameraSpeed;
12382 Real ClipConditionValue;
12386 Void TimePlay();
12390 Void TimeStop();
12394 Void TimeToggle();
12398 Void Rewind();
12402 Void Quit();
12406 Void UpdatePropertyListReadOnly();
12410 Void CreateBlock();
12414 Void CreateKey();
12418 Void ToggleTriggersMode();
12422 Void CreateClip();
12426 Void RemoveClip();
12430 Void Undo();
12434 Void Redo();
12438 Void ImportClip();
12442 Void ExportClip();
12446 Void ImportGhosts();
12450 Void ToggleRecordGhostMode();
12454 Void ShootVideo();
12458 Void ShootScreen();
12462 Void ComputeShadows();
12466 Void ToggleDisplayPlayerNames();
12470 Void InformInterfaceIsHidden();
12474 Void ToggleGhostRef();
12478 Void StopGhostRefPreview();
12482 Void ToggleClipCondition();
12486 Void Copy();
12490 Void Paste();
12494 Void Cut();
12498 Void DuplicateTrack();
12502 Void SplitBlock();
12506 Void MergeTracks();
12510 Void ToggleAlwaysShowTriggerZone();
12514 Void ResetTriggerZone();
12518 Void RemoveAllTracks();
12522 CMediaTrackerClip * const Clip;
12526 CMediaTrackerClipGroup * const ClipGroup;
12530 Array<CEditorEvent* const > PendingEvents;
12534 Text const PopUpMessage;
12538 CEditorMediaTracker::EMediaTrackerBlockType const EditMode;
12542 Void SetClip(CMediaTrackerClip Clip);
12546 Boolean IsPlaying();
12550 Boolean IsDevMode();
12554 Void SetCameraDrawRect(Vec2 Pos,Vec2 Size);
12558 Integer GetSelectedClip();
12562 Integer GetSelectedTrack();
12566 Integer GetSelectedBlock();
12570 Integer GetSelectedKey();
12574 Void SelectItem(Integer Track,Integer Block,Integer Key);
12578 Void CreateTrack(CEditorMediaTracker::EMediaTrackerBlockType Type);
12582 Boolean CanCreateTrack(CEditorMediaTracker::EMediaTrackerBlockType Type);
12586 Boolean IsKeyStartEnd(Integer Track,Integer Block,Integer Key);
12590 Void RemoveTrack(Integer Track);
12594 Void RemoveBlock(Integer Track,Integer Block);
12598 Void RemoveKey(Integer Track,Integer Block,Integer Key);
12602 Boolean CanRemoveAllKeys(Integer Track,Integer Block);
12606 Void RemoveAllKeys(Integer Track,Integer Block);
12610 Void SetProcessCamInputs(Boolean ProcessCamInputs);
12614 Void ToolBarSetVisible(Boolean Visible);
12618 Boolean IsTriggersModeOn();
12622 Boolean IsRecordGhostModeOn();
12626 Void SetTempHidePropertyList(Boolean TempHide);
12630 Void SetClipName(Integer Index,Text Name);
12634 Void SetTrackName(Integer Index,Text Name);
12638 Void SetTrackIsCycling(CMediaTrackerTrack Track,Boolean IsCycling);
12642 Void SetTrackIsKeepPlaying(CMediaTrackerTrack Track,Boolean IsKeepPlaying);
12646 Boolean GetTrackIsCycling(CMediaTrackerTrack Track);
12650 Boolean GetTrackIsKeepPlaying(CMediaTrackerTrack Track);
12654 Void SetStartIsCycling(CMediaTrackerTrack Track);
12658 Void SetStopIsCycling(CMediaTrackerTrack Track);
12662 Real GetStartIsCycling(CMediaTrackerTrack Track);
12666 Real GetStopIsCycling(CMediaTrackerTrack Track);
12670 Text GetGhostRefName();
12674 Text GetClipConditionName();
12678 Boolean HasClipCondition();
12682 Real GetTimeLimit();
12686 Void SetTimer(Text Time);
12690 Void SetCurrentBlockStart(Text Start);
12694 Void SetCurrentBlockEnd(Text End);
12698 CEditorMediaTracker::EMediaTrackerCopyType CanCopy();
12702 CEditorMediaTracker::EMediaTrackerCopyType CanCut();
12706 CEditorMediaTracker::EMediaTrackerPasteType CanPaste();
12710 Boolean HasCopiedItem();
12714 Boolean IsPropertyListReadOnlyAndVisible();
12718 Void SelectGhostRef(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12722 Void DeleteGhostRef(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12726 Void RecordGhostRef(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12730 Boolean GhostRefExists(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12734 CEditorMediaTracker::EMediaTrackerGhostRef GetSelectedGhostRef();
12738 Void StartGhostRefPreview(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12742 Void RemoveAllGhostTracksExcept(Integer Track);
12746 Void RemoveAllCameraTracksExcept(Integer Track);
12750 Boolean CanRemoveAllGhostTracks();
12754 Boolean CanRemoveAllCameraTracks();
12758 Boolean IsGhostRefPreview();
12762 Void SetProfileTheme(Integer Theme);
12766 Integer GetProfileTheme();
12767};
12768
12773public :
12777 enum EPainterMode {
12778 NoOp,
12779 Fill,
12780 Brush,
12781 Sticker,
12782 Layer,
12783 BadgeSlots,
12784 Team,
12785 };
12789 enum EPainterSolidType {
12790 Other,
12791 CarWithPilot,
12792 Pilot_Male,
12793 Pilot_Female,
12794 Helmet,
12795 };
12799 enum EEditorSkin_IconType {
12800 Stickers,
12801 Brushs,
12802 Layers,
12803 SubObjects,
12804 };
12808 Array<CImage*> AllIcons;
12812 Array<CEditorEvent*> PendingEvents;
12816 Array<Vec3> CustomColors;
12820 CEditorSkin::EPainterMode PainterMode;
12824 CEditorSkin::EPainterSolidType PainterSolidType;
12828 Boolean IsTextEnabled;
12832 Boolean IsPickingColor;
12836 Boolean IsErasing;
12840 Boolean IsUsingShininessOnly;
12844 Boolean IsBrushNormal;
12848 Boolean IsTextSymmetry;
12852 Array<Integer> SubObjectsSelected;
12856 Integer SubObjectsCount;
12860 Array<Integer> LayersSelected;
12864 Integer LayersCount;
12868 Array<Integer> StickersSelected;
12872 Integer StickersCount;
12876 Array<Integer> BrushsSelected;
12880 Integer BrushsCount;
12884 Array<Integer> SubFolderElemSelected;
12888 Integer CurSubFolderElemCount;
12892 Real Transparency;
12896 Real Scale;
12900 Real Rough;
12904 Real Metal;
12908 Vec3 Color;
12912 Integer EditionLayersCount;
12916 Boolean IsEditingLayer;
12920 Integer EditionLayerSelected;
12924 Integer SubObjectHovered;
12928 Array<Integer> CurrentLayerSubObjectsSelected;
12932 Boolean CanUndo;
12936 Boolean CanRedo;
12940 Text TextToCreateBitmap;
12944 Boolean IsFillWithReplacement;
12948 Text SkinName;
12952 Boolean IsCameraButtonOn;
12956 Void ToggleIsTextEnabled();
12960 Void ToggleIsPickingColor();
12964 Void TogglePaintSymMode();
12968 Void EditCurrentLayerSelected();
12972 Void AddAndEditLayer();
12976 Void CloseEditSelectedLayer();
12980 Void MoveSelectedLayerUp();
12984 Void MoveSelectedLayerDown();
12988 Void DeleteSelectedLayer();
12992 Void Undo();
12996 Void Redo();
13000 Void ExportSkin();
13004 Void AlignBrushSticker();
13008 Void AskSwitchEditedNodType();
13012 Void ToggleHelper();
13016 Void ToggleLight();
13020 Void ExportLayerEdition();
13024 Void ImportLayerEdition();
13028 CImage GetAllIconFromId(Integer Index,CEditorSkin::EEditorSkin_IconType IconType);
13032 CImage GetSubFolderIconFromId(Integer FolderIndex,Integer ElemIndex,CEditorSkin::EEditorSkin_IconType IconType);
13036 Text GetLayerNameFromIndex(Integer Index);
13040 Boolean GetLayerVisibleFromIndex(Integer Index);
13044 Void SetLayerVisibleFromIndex(Boolean IsVisible,Integer Index);
13048 Boolean SetPainterMode(CEditorSkin::EPainterMode Mode);
13052 Integer GetSubObjectMaxPage(Integer NbPerPage);
13056 Integer GetMainFrameMaxPage(Integer NbPerPage);
13060 Void OnLayerSelected(Integer CurrentPage,Integer Index);
13064 Void OnStickerSelected(Integer CurrentPage,Integer Index);
13068 Void OnBrushSelected(Integer CurrentPage,Integer Index);
13072 Void OnSubFolderElemSelected(Integer SubFolderCurrentPage,Integer ElemIndex);
13076 Void SetCurrentLayerSelectedName(Text Name);
13080 Void AddScale(Real Delta);
13084 Void AddAngle(Real DeltaRad);
13088 Void SetSubObjectIndexForLayer(Integer SubObjectIndex,Integer LayerIndex,Boolean ResetFirst);
13092 Boolean IsElemAtScriptIndexFolder(Integer ScriptIndex,CEditorSkin::EEditorSkin_IconType IconType);
13096 Text GetFolderNameFromScriptIndex(Integer ScriptIndex,CEditorSkin::EEditorSkin_IconType IconType);
13100 Boolean IsCtrlDown();
13104 Text GetSubObjectNameFromIndex(Integer ScriptIndex);
13108 Void OpenMediaFolder(Text SubFolderPath);
13112 Void ReloadResources(Boolean forSubObjects);
13113};
13114
13123public :
13131 CModuleMenuComponent GetFirstComponent(Text Name);
13132};
13133
13137class CTitleControl : public CNod {
13138public :
13142 enum ESplitScreenLayout {
13143 Horizontal,
13144 Vertical,
13145 Four,
13146 };
13150 enum EResult {
13151 Success,
13152 Error_Internal,
13153 Error_DataMgr,
13154 Error_Net_ServerNotFound,
13155 Error_Net_ServerUnreachable,
13156 Error_Net_Disconnected,
13157 Error_Net_WrongPassword,
13158 Error_Network_OnlineExpired,
13159 Error_Network_ServerFull,
13160 Error_Abort,
13161 };
13165 enum EEditorType {
13166 ActionMaker,
13167 ChallengeEditor,
13168 ItemEditor,
13169 InterfaceDesigner,
13170 MeshModeler,
13171 };
13175 enum EReplayEditType {
13176 None,
13177 Edit,
13178 View,
13179 Shoot,
13180 };
13188 CTitleControl::EResult const LatestResult;
13192 Text const CustomResultType;
13196 Array<Text> CustomResultData;
13200 Void PlayMap(Text Map,Text Mode,Text SettingsXml);
13204 Void PlayCampaign(CCampaign Campaign,CMapInfo MapInfo,Text Mode,Text SettingsXml);
13208 Void PlayMapList(Array<Text> MapList,Text Mode,Text SettingsXml);
13212 Void PlayMatchSettings(CMatchSettings MatchSettings,Text OverrideMode,Text OverrideSettingsXml);
13216 Void PlayAgainstReplay(Text Replay,Text Mode,Text SettingsXml);
13220 Void PlaySplitScreen(CTitleControl::ESplitScreenLayout LayoutType,Array<Text> MapList,Text Mode,Text SettingsXml);
13224 Void PlayMultiOnSameScreen(Array<Text> MapList,Text Mode,Text SettingsXml);
13228 Void PlaySplitScreen(CTitleControl::ESplitScreenLayout LayoutType,CMatchSettings MatchSettings);
13232 Void PlayMultiOnSameScreen(CMatchSettings MatchSettings);
13236 Void ViewReplay(Text Replay);
13240 Void OpenEditor(Text EditorName,Text MainPluginSettings);
13244 Void OpenEditor(CTitleControl::EEditorType EditorType);
13248 Void EditSkins();
13252 Void EditSkinsFromFileName(Text SkinFilePath);
13256 Void EditReplay(Array<Text> ReplayList);
13260 Void EditReplay(Array<Text> ReplayList,CTitleControl::EReplayEditType EditType);
13264 Void EditGhosts(Text Map);
13268 Void EditAsset(Text EditorName,Text MainPluginSettingsXml,Text RelativeFileName);
13272 Void EditMap(Text Map,Text EditorPluginScript,Text EditorPluginArgument);
13276 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text EditorPluginScript,Text EditorPluginArgument);
13280 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text EditorPluginScript,Text EditorPluginArgument,Boolean UpgradeToAdvancedEditor);
13284 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean UpgradeToAdvancedEditor);
13288 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean UpgradeToAdvancedEditor,Boolean OnlyUseForcedPlugins);
13292 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Text EditorPluginScript,Text EditorPluginArgument);
13296 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Boolean UseSimpleEditor,Text EditorPluginScript,Text EditorPluginArgument);
13300 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Boolean UseSimpleEditor,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments);
13304 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Boolean UseSimpleEditor,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean OnlyUseForcedPlugins);
13308 Void EditNewMapFromBaseMap(Text BaseMapName,Text ModNameOrUrl,Text PlayerModel,Text MapType,Text EditorPluginScript,Text EditorPluginArgument);
13312 Void EditNewMapFromBaseMap(Text BaseMapName,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Text EditorPluginScript,Text EditorPluginArgument);
13316 Void EditNewMapFromBaseMap(Text BaseMapName,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean OnlyUseForcedPlugins);
13320 Boolean const CanPublishFiles;
13328 Void ProcessManiaCodeXml(Text ManiaCodeXml);
13332 Array<CServerInfo* const > LocalServers;
13336 Array<CServerInfo* const > LocalServers_CurrentTitle;
13340 Void DiscoverLocalServers();
13344 Void CreateServer(Text ServerName,Text ServerComment,Integer MaxPlayerCount,Text Password,Text PasswordSpectators,CMatchSettings MatchSettings);
13348 Void CreateServer(Text ServerName,Text ServerComment,Integer MaxPlayerCount,Text Password,Text PasswordSpectators,CMatchSettings MatchSettings,Boolean LocalOnly);
13356 Void GetServerInfo(CServerInfo LocalServer);
13360 Void GetServerInfo_Abort();
13364 CServerInfo * const GetServerInfo_Result;
13368 Void Join_GetServerInfo_Result(Boolean AsSpectator,Text Password);
13372 Void JoinServer(Text ServerLogin,Boolean AsSpectator,Text Password);
13376 Boolean JoinServer_DisableSystemDialogs;
13380 Void Quit();
13381};
13382
13391public :
13395 CStation * const Station;
13399 Void EnterStation();
13403 Void Maker_EditTitle(Text EditedTitleId);
13407 Void Maker_EditNewTitle(Text EditedTitleName);
13411 Array<CPackCreatorTitleInfo* const > Maker_EditedTitles;
13412};
13413
13417class CStation : public CNod {
13418public :
13422 enum EEchelon {
13423 None,
13424 Bronze1,
13425 Bronze2,
13426 Bronze3,
13427 Silver1,
13428 Silver2,
13429 Silver3,
13430 Gold1,
13431 Gold2,
13432 Gold3,
13433 };
13437 CTitle * const Title;
13441 Integer const AudienceRegisteredUsers;
13445 Integer const CampaignMedalsMax;
13449 Integer const CampaignMedalsCurrent;
13453 Integer const CampaignMedalsRanking;
13457 Real const LadderPoints;
13461 Integer const LadderRank;
13465 CStation::EEchelon const Echelon;
13469 Integer const NextEchelonPercent;
13473 Boolean DisableQuickEnter;
13477 Boolean IsLogoVisible;
13481 Real GhostAlpha;
13485 Vec3 FocusLightColor;
13489 Vec3 NormalLightColor;
13494};
13495
13504public :
13508 Array<CManiaAppEvent* const > PendingEvents;
13512 Void BrowserBack();
13516 Void BrowserQuit();
13520 Void BrowserHome();
13524 Void BrowserReload();
13528 Text BrowserFocusedFrameId;
13529};
13530
13539class CMap : public CNod {
13540public :
13544 CMapInfo * const MapInfo;
13548 Text MapName;
13552 Text Comments;
13556 Text const AuthorZoneIconUrl;
13560 Text const CollectionName;
13564 Text const DecorationName;
13568 Text const AuthorLogin;
13572 Text const AuthorNickName;
13576 Text const AuthorZonePath;
13580 Text const MapType;
13584 Text const MapStyle;
13588 Integer TMObjective_AuthorTime;
13592 Integer TMObjective_GoldTime;
13596 Integer TMObjective_SilverTime;
13600 Integer TMObjective_BronzeTime;
13604 Integer TMObjective_NbLaps;
13608 Boolean TMObjective_IsLapRace;
13612 Text ObjectiveTextAuthor;
13616 Text ObjectiveTextGold;
13620 Text ObjectiveTextSilver;
13624 Text ObjectiveTextBronze;
13628 Integer const CopperPrice;
13632 Int3 const Size;
13636 Boolean const HasCustomIntro;
13640 Boolean const HasCustomMusic;
13641};
13642
13649class CMlFrame : public CMlControl {
13650public :
13658 CMlControl GetFirstChild(Text ControlId);
13662 Boolean ScrollActive;
13666 Vec2 ScrollOffset;
13670 Vec2 const ScrollAnimOffset;
13674 Vec2 ScrollMax;
13678 Vec2 ScrollMin;
13682 Boolean ScrollGridSnap;
13686 Vec2 ScrollGrid;
13690 Void Scroll(Vec2 DeltaInGridUnits);
13694 Void ScrollBumpTop();
13698 Void ScrollBumpBottom();
13702 Void ScrollBumpLeft();
13706 Void ScrollBumpRight();
13710 Boolean DisablePreload;
13711};
13712
13719class CBaseConstEvent : public CNod {
13720public :
13725};
13726
13734public :
13738 Vec3 Color;
13739};
13740
13747class CMlTimeLine : public CMlControl {
13748public :
13752 Real Time;
13756 Real TimeMin;
13760 Real TimeMax;
13764 Integer Page;
13768 Integer TracksPerPage;
13772 Boolean const IsDraggingCursor;
13776 Boolean const IsDraggingBlock;
13780 Boolean const IsDraggingKey;
13784 Boolean const IsScaling;
13788 Boolean const IsPanning;
13792 Void ShowFullTimeLine();
13796 Void ResetCycling();
13800 Void SetSimpleMediaTrackerPilot(CEditorMediaTracker MediaTracker);
13804 Void SetSelection(Integer Track,Integer Block,Integer Key);
13808 Void SetSeparatorColor(Text HexColor);
13812 Void SetBgColor(Text HexColor);
13816 Void SetCursorColor(Text HexColor);
13820 Void SetRulerColor(Text HexColor);
13824 Void SetRulerLineColor(Text HexColor);
13828 Void SetKeyColor(Text HexColor);
13832 Void SetStartIsCycling(Real Time);
13836 Void SetStopIsCycling(Real Time);
13840 Void SetTimeLimit(Real TimeLimit);
13841};
13842
13849class CMlSlider : public CMlControl {
13850public :
13854 Real Value;
13858 Real MinRange;
13862 Real MaxRange;
13863};
13864
13872public :
13876 Boolean IsInitPlay;
13880 Boolean Music;
13884 Boolean IsLooping;
13888 Real Volume;
13892 Text Url;
13896 Void Play();
13900 Void Stop();
13904 Void StopAndRewind();
13905};
13906
13913class CMlGraph : public CMlControl {
13914public :
13918 Vec2 CoordsMin;
13922 Vec2 CoordsMax;
13926 CMlGraphCurve AddCurve();
13930 Void RemoveCurve(CMlGraphCurve Curve);
13934 Array<CMlGraphCurve*> Curves;
13935};
13936
13943class CMlGauge : public CMlControl {
13944public :
13948 Text Style;
13952 Void SetRatio(Real NewRatio);
13956 Void SetClan(Integer NewClan);
13968 Integer Clan;
13972 Vec3 Color;
13976 Boolean DrawBackground;
13980 Boolean DrawBlockBackground;
13984 Boolean CenteredBar;
13985};
13986
13993class CMlCamera : public CMlControl {
13994public :
13998 Boolean Fullscreen;
13999};
14000
14007class CMlTextEdit : public CMlControl {
14008public :
14012 enum EControlScriptEditorTextFormat {
14013 Basic,
14014 Script,
14015 Password,
14016 Newpassword,
14017 };
14021 Text Value;
14025 Void StartEdition();
14029 Integer MaxLine;
14033 Boolean AutoNewLine;
14037 Boolean ShowLineNumbers;
14041 Real LineSpacing;
14045 Integer const ValueLineCount;
14049 Real Opacity;
14053 Vec3 TextColor;
14057 Real TextSizeReal;
14061 CMlTextEdit::EControlScriptEditorTextFormat TextFormat;
14062};
14063
14070class CMlEntry : public CMlControl {
14071public :
14075 enum ETextFormat {
14076 Basic,
14077 Script,
14078 Password,
14079 Newpassword,
14080 };
14084 enum ValueType {
14085 Ml_Unknown,
14086 Ml_Natural,
14087 Ml_Integer,
14088 Ml_Real,
14089 Ml_String,
14090 Ml_TimeMmSsCc,
14091 Ml_TimeHhMmSs,
14092 Ml_RealFormated,
14093 Ml_TimeMmSs,
14094 Ml_Ascii7bit,
14095 Ml_Real3Decimals,
14096 Ml_TimeHhMmSs_24,
14097 Ml_TimeHhMm,
14098 Ml_Percent,
14099 Ml_Hexa,
14100 Ml_TimeHhMmSsOrMmSs,
14101 Ml_TimeHhMmFromSeconds,
14102 Ml_TimeHhMmSsMil,
14103 };
14107 Text Value;
14111 Void StartEdition();
14115 Void SetText(Text NewText,Boolean SendSubmitEvent);
14119 CMlEntry::ETextFormat TextFormat;
14123 Real Opacity;
14127 Vec3 TextColor;
14131 Real TextSizeReal;
14135 Integer MaxLength;
14139 CMlEntry::ValueType GetValueType();
14143 Void SetValueType(CMlEntry::ValueType ValueType);
14144};
14145
14152class CMlLabel : public CMlControl {
14153public :
14157 enum EBlendMode {
14158 Default,
14159 Add,
14160 };
14164 enum EFilterProfanities {
14165 Never,
14166 OnlyIfNotTranslated,
14167 Always,
14168 };
14172 Text Style;
14176 Text Substyle;
14180 Text TextFont;
14184 Void SetText(Text NewText);
14188 Text Value;
14192 Integer const ValueLineCount;
14196 Integer MaxLine;
14200 Real LineSpacing;
14204 Real ItalicSlope;
14208 Boolean AppendEllipsis;
14212 Boolean AutoNewLine;
14216 Real Opacity;
14224 Vec3 TextColor;
14228 Real TextSizeReal;
14232 CMlLabel::EBlendMode Blend;
14236 Real ComputeWidth(Text Text);
14240 Real ComputeWidth(Text Text,Boolean Translated);
14244 Real ComputeHeight(Text Text);
14248 Text TTS_AltText;
14252 Boolean TTS_AltText_Translate;
14256 Void TTS_Focus();
14260 Void TTS_Unfocus();
14264 CMlLabel::EFilterProfanities FilterProfanities;
14265};
14266
14273class CMlMinimap : public CMlControl {
14274public :
14278 Vec3 WorldPosition;
14282 Vec2 MapPosition;
14286 Real MapYaw;
14294 Boolean Underground;
14298 Boolean DisableAutoUnderground;
14302 Void Fog_SetAll(Real Value);
14306 Void Fog_ClearDisk(Vec3 WorldCenter,Real Radius,Real FadeSize);
14307};
14308
14315class CMlQuad : public CMlControl {
14316public :
14320 enum EKeepRatioMode {
14321 Inactive,
14322 Clip,
14323 Fit,
14324 };
14328 enum EBlendMode {
14329 Default,
14330 Add,
14331 };
14335 Void ChangeImageUrl(Text fieldName);
14339 CImage * Image;
14343 Text ImageUrl;
14347 Text ImageUrlFocus;
14351 Text AlphaMaskUrl;
14355 Text Style;
14359 Text Substyle;
14363 Boolean StyleSelected;
14367 Boolean const DownloadInProgress;
14371 Boolean SuperSample;
14375 Vec3 Colorize;
14379 Vec3 ModulateColor;
14383 Vec3 BgColor;
14387 Vec3 BgColorFocus;
14391 Real Opacity;
14395 CMlQuad::EKeepRatioMode KeepRatio;
14399 CMlQuad::EBlendMode Blend;
14403 Void RefreshImages();
14407 Void TTS_Focus();
14411 Void TTS_Unfocus();
14415 Text TTS_AltText;
14419 Boolean TTS_AltText_Translate;
14420};
14421
14425class CParsingDocument : public CNod {
14426public :
14430 Text const TextContents;
14434 CParsingNode * const Root;
14442 CParsingNode GetFirstChild(Text Name);
14443};
14444
14451class CHttpRequest : public CNod {
14452public :
14456 Text const Url;
14468 Boolean const IsCompleted;
14469};
14470
14474class CHttpEvent : public CNod {
14475public :
14479 enum EType {
14480 RequestComplete,
14481 };
14485 CHttpEvent::EType const Type;
14490};
14491
14495class CVideo : public CNod {
14496public :
14500 enum ETextureFilter {
14501 Default,
14502 Point,
14503 };
14507 CImage * const Image;
14511 Boolean IsLooping;
14515 Boolean const DownloadInProgress;
14519 Real const PlayLength;
14523 Void BeginProcessing();
14527 Void EndProcessing();
14531 Boolean const IsProcessing;
14539 Void Play();
14543 Void Pause();
14547 Void Stop();
14551 Boolean const IsPlaying;
14559 CVideo::ETextureFilter TextureFilter;
14560};
14561
14565class CAudioSource : public CNod {
14566public :
14570 Void Play();
14574 Void Stop();
14578 Boolean const IsPlaying;
14582 Boolean const DownloadInProgress;
14586 Real Volume;
14590 Real FadeDuration;
14594 Real VolumedB;
14598 Real Pitch;
14602 Vec3 RelativePosition;
14606 Vec3 PanRadiusLfe;
14610 Real PlayCursor;
14614 Real const PlayLength;
14615};
14616
14621public :
14625 enum EUpdateMode {
14626 Cut,
14627 OnNextBar,
14628 OnNextHalfBar,
14629 OnNextBeat,
14630 };
14634 Array<Real> Tracks_Volume;
14638 Array<Real> Tracks_VolumedB;
14642 Array<Text> Tracks_Name;
14646 Array<Real> Tracks_Length;
14650 Integer const Tracks_Count;
14654 Real const BeatsPerMinute;
14658 Real const BeatDuration;
14662 Integer const BeatsPerBar;
14666 CAudioSourceMusic::EUpdateMode UpdateMode;
14670 Boolean Dbg_ForceIntensity;
14674 Boolean Dbg_ForceSequential;
14678 Boolean Dbg_ForceRandom;
14698 Real FadeTracksDuration;
14702 Real FadeFiltersDuration;
14706 Void MuteAllTracks();
14710 Void UnmuteAllTracks();
14714 Void NextVariant();
14718 Void NextVariant(Boolean IsIntensityDecreasing);
14722 Void EnableSegment(Text SegmentName);
14726 Boolean UseNewImplem;
14727};
14728
14732class CInputEvent : public CNod {
14733public :
14737 enum EType {
14738 PadButtonPress,
14739 };
14743 enum EButton {
14744 Left,
14745 Right,
14746 Up,
14747 Down,
14748 A,
14749 B,
14750 X,
14751 Y,
14752 L1,
14753 R1,
14754 LeftStick,
14755 RightStick,
14756 Menu,
14757 View,
14758 LeftStick_Left,
14759 LeftStick_Right,
14760 LeftStick_Up,
14761 LeftStick_Down,
14762 RightStick_Left,
14763 RightStick_Right,
14764 RightStick_Up,
14765 RightStick_Down,
14766 L2,
14767 R2,
14768 None,
14769 };
14773 CInputEvent::EType const Type;
14777 CInputPad * const Pad;
14781 CInputEvent::EButton const Button;
14785 Boolean const IsAutoRepeat;
14789 Integer const KeyCode;
14793 Text const KeyName;
14794};
14795
14799class CInputPad : public CNod {
14800public :
14804 enum EButton {
14805 Left,
14806 Right,
14807 Up,
14808 Down,
14809 A,
14810 B,
14811 X,
14812 Y,
14813 L1,
14814 R1,
14815 LeftStick,
14816 RightStick,
14817 Menu,
14818 View,
14819 LeftStick_Left,
14820 LeftStick_Right,
14821 LeftStick_Up,
14822 LeftStick_Down,
14823 RightStick_Left,
14824 RightStick_Right,
14825 RightStick_Up,
14826 RightStick_Down,
14827 L2,
14828 R2,
14829 None,
14830 };
14834 enum EPadType {
14835 Keyboard,
14836 Mouse,
14837 Generic,
14838 XBox,
14839 PlayStation,
14840 Vive,
14841 };
14845 Integer const ControllerId;
14849 Ident const UserId;
14853 CInputPad::EPadType const Type;
14857 Text const ModelName;
14861 Integer const IdleDuration;
14865 Integer const Left;
14869 Integer const Right;
14873 Integer const Up;
14877 Integer const Down;
14881 Integer const A;
14885 Integer const B;
14889 Integer const X;
14893 Integer const Y;
14897 Integer const L1;
14901 Integer const R1;
14905 Integer const LeftStickBut;
14909 Integer const RightStickBut;
14913 Integer const Menu;
14917 Integer const View;
14937 Real const L2;
14941 Real const R2;
14945 Array<CInputPad::EButton> ButtonEvents;
14949 Void ClearRumble();
14953 Void AddRumble(Integer Duration,Real LargeMotor,Real SmallMotor);
14958};
14959
14963class CCampaign : public CNod {
14964public :
14968 Text const CampaignId;
14972 Array<CMapGroup*> MapGroups;
14976 Integer GetMapGroupCount();
14980 CMapGroup GetMapGroup(Integer Index);
14984 CMapInfo GetNextMap(CMapInfo CurrentMapInfo);
14988 Text ScoreContext;
14992 Boolean OfficialRecordEnabled;
14993};
14994
15008
15022
15048
15062
15076
15090
15104
15130
15138public :
15143};
15144
15170
15184
15198
15206public :
15211};
15212
15226
15244
15258
15272
15290
15298public :
15302 Array<CZone* const > ZoneList;
15306 CZone GetUserZone(Text WebServicesUserId);
15307};
15308
15312class CUserV2Profile : public CNod {
15313public :
15317 enum EMapEditorMode {
15318 Ask,
15319 Advanced,
15320 };
15324 enum EMapEditorMood {
15325 Sunrise,
15326 Day,
15327 Sunset,
15328 Night,
15329 };
15333 enum EMapEditorDifficulty {
15334 Simple,
15335 Advanced,
15336 Expert,
15337 };
15341 enum ECustomPlayerModels {
15342 All,
15343 OnlyTextures,
15344 None,
15345 };
15349 enum EInputMouseReleaseKey {
15350 LeftAlt,
15351 RightAlt,
15352 LeftCtrl,
15353 RightCtrl,
15354 };
15358 enum EPlayerVisibility {
15359 Hidden,
15360 Ghost,
15361 Opaque,
15362 };
15366 enum EDisplayRecords {
15367 Progressive,
15368 Always,
15369 Hide,
15370 };
15374 enum ERoadsideSpectatorVisibility {
15375 Never,
15376 SpectatorOnly,
15377 Always,
15378 };
15382 enum EIngameChatBackground {
15383 Hidden,
15384 Transparent,
15385 Opaque,
15386 };
15390 enum EIngameChatTextSize {
15391 Medium,
15392 Small,
15393 Big,
15394 };
15398 Boolean const CanChangePassword;
15402 Boolean const CanChangeNickName;
15410 Boolean const CanChangeSkin;
15414 Boolean const CanChangeZone;
15418 Boolean const CanChangeGroups;
15422 Void Account_ResetChanges();
15426 Text Account_Name;
15430 Text Account_EMail;
15434 Boolean Account_AcceptNews;
15438 Boolean Account_EnableAutoConnect;
15450 Text User_Description;
15454 Text User_ClubLinkUrl;
15458 Text User_Trigram;
15462 Boolean User_ForceEmptyPilotSkin;
15466 Text User_CharacterSkinOptions;
15470 Boolean User_CombinePrestigeAndSkins;
15474 Boolean Custom_EnableAvatars;
15478 Boolean Custom_EnableChat;
15482 CUserV2Profile::ECustomPlayerModels Custom_PlayerModels;
15486 Boolean Custom_EnableUnlimitedHorns;
15490 CUserV2Profile::EMapEditorMode Editors_MapEditorMode;
15494 Boolean Editors_MapEditorUseQuickstart;
15498 Boolean Editors_MapEditorQuickstartUseGamepad;
15502 CUserV2Profile::EMapEditorDifficulty Editors_MapEditorQuickstartDifficulty;
15506 CUserV2Profile::EMapEditorMood Editors_MapEditorQuickstartMood;
15510 Integer Editors_MapEditorQuickstartMapType;
15514 Boolean Online_AutoSaveReplay;
15518 Boolean Online_SaveRoundReplaysSeparately;
15522 CUserV2Profile::EPlayerVisibility Online_DefaultOpponentVisibility;
15526 CUserV2Profile::ERoadsideSpectatorVisibility Online_RoadsideSpectatorVisibility;
15530 Boolean Title_IsForbiddenWithParentalLock;
15534 Integer AddictionLimiter_DailyQuotaMinutes;
15538 Boolean Steam_OpenLinksInSteam;
15542 Boolean Steam_SynchonizeWorkshopFiles;
15546 Boolean Interface_CrosshairEnableCustomColor;
15566 Text Interface_CrosshairName;
15574 Boolean Interface_AllyEnableCustomColor;
15582 Boolean Interface_OppoEnableCustomColor;
15590 Boolean Interface_BeaconUseProfileColor;
15606 CUserV2Profile::EPlayerVisibility Interface_InternalCamLocalPlayerVisibility;
15610 Boolean Interface_UseOldInternalCam;
15614 Boolean Interface_UseAlternateCam1;
15618 Boolean Interface_UseAlternateCam2;
15622 Boolean Interface_ShowSpecialsFeedback;
15626 CUserV2Profile::EDisplayRecords Interface_DisplayRecords;
15630 Boolean Interface_AllowChatHiding;
15634 Boolean Interface_ColorblindMode;
15638 CUserV2Profile::EIngameChatBackground Interface_IngameChatBackground;
15642 CUserV2Profile::EIngameChatTextSize Interface_IngameChatTextSize;
15646 Boolean Inputs_MouseLookInvertY;
15650 CUserV2Profile::EInputMouseReleaseKey Inputs_MouseReleaseKey;
15674 Real Inputs_MouseSensitivityDefault_Raw;
15678 Real Inputs_MouseSensitivityLaser_Raw;
15682 Array<CVehicleSettings*> Inputs_Vehicles;
15686 Boolean Adverts_Enabled;
15690 Boolean Adverts_UsePersonnalData;
15694 Boolean TTS_Enabled;
15698 Boolean STT_Enabled;
15702 Boolean VoiceChat_Loopback;
15706 Boolean VoiceChat_Enabled;
15710 Boolean const STT_Available;
15714 Boolean VoiceChat_SendTextAsVoice;
15715};
15716
15724public :
15728 Array<Text> Values;
15729};
15730
15734class CMasterServerUser : public CNod {
15735public :
15739 Boolean const NeedToChangeZone;
15751 Integer const MultiInternetPlayTimeLeft;
15755 enum EMasterServerConnectionStatus {
15756 NotConnected,
15757 Connecting,
15758 Connected,
15759 Disconnecting,
15760 };
15772 CMasterServerUser::EMasterServerConnectionStatus const ConnectionStatus;
15776 Text const LastConnectionErrorType;
15780 Text const LastConnectionErrorCode;
15784 Text const LastConnectionErrorDescription;
15785};
15786
15794public :
15795};
15796
15804public :
15808 Boolean const Value;
15809};
15810
15824
15832public :
15836 Text const SessionId;
15840 Text const ServerLogin;
15844 Text const ServerPassword;
15845};
15846
15854public :
15858 Array<CNews* const > NewsList;
15859};
15860
15874
15882public :
15886 CUserPrestige * const UserPrestige;
15890 Boolean const HasUserPrestige;
15891};
15892
15900public :
15904 Array<CPrestige* const > PrestigeList;
15905};
15906
15914public :
15918 CSquad * const Squad;
15919};
15920
15928public :
15932 Text const Value;
15933};
15934
15942public :
15946 Text GetClubTag(Text WebServicesUserId);
15947};
15948
15962
15971public :
15975 Void Menu_Goto(Text PageId);
15979 Void Menu_Back();
15983 Void Menu_Previous();
15987 Void Menu_Quit();
15988};
15989
15997public :
16001 enum EType {
16002 LayerCustomEvent,
16003 KeyPress,
16004 ExternalCustomEvent,
16005 MenuNavigation,
16006 };
16010 enum EMenuNavAction {
16011 Up,
16012 Right,
16013 Left,
16014 Down,
16015 Select,
16016 Cancel,
16017 PageUp,
16018 PageDown,
16019 AppMenu,
16020 Action1,
16021 Action2,
16022 Action3,
16023 Action4,
16024 ScrollUp,
16025 ScrollDown,
16026 };
16030 CManiaAppEvent::EType const Type;
16034 CUILayer * const CustomEventLayer;
16038 Text const CustomEventType;
16042 Array<Text> CustomEventData;
16046 Text const ExternalEventType;
16050 Array<Text> ExternalEventData;
16054 CManiaAppEvent::EMenuNavAction const MenuNavAction;
16058 Boolean const IsActionAutoRepeat;
16062 Integer const KeyCode;
16066 Text const KeyName;
16067};
16068
16072class CTitleEdition : public CNod {
16073public :
16077 enum EDrive {
16078 TitleReadable,
16079 Title,
16080 User,
16081 };
16085 CTitle * const TitleMaker;
16093 Text const EditedTitleId;
16097 CPackCreatorTitleInfo * const EditedTitleInfo;
16105 Void File_Move(Text OrigName,Text DestNameOrFolder,Boolean KeepOriginalCopy);
16109 Boolean File_Exists(Text FileName,CTitleEdition::EDrive InDrive);
16113 Void File_Delete(Text Name);
16117 Void File_WriteText(Text FileName,Text Text);
16121 Text File_ReadText(Text FileName);
16125 Void Dialog_ImportFiles();
16129 Boolean const Dialog_IsFinished;
16133 Boolean const Dialog_Success;
16137 Boolean const Dialog_Aborted;
16141 Void OpenTitleFolderInExplorer();
16145 Void ReloadTitleDesc();
16149 Void SaveTitleDesc();
16153 Void SetTitleCampaign(Integer CampaignNum,Text ScoreContext,Text MapsFolderNameOrPlayListName,Boolean OfficialRecordEnabled);
16157 Void SetTitleCampaign(Integer CampaignNum,Text ScoreContext,Text MapsFolderNameOrPlayListName,Boolean OfficialRecordEnabled,Boolean DisableUnlockSystem);
16158};
16159
16164public :
16168 enum EFilterPriority {
16169 All,
16170 MoreThanMemo,
16171 MoreThanNotice,
16172 };
16188 CNotificationsConsumer::EFilterPriority Filter_Priority;
16189};
16190
16249
16254public :
16258 enum ESyncMode {
16259 Default,
16260 Disabled,
16261 Manual,
16262 Clan,
16263 Squad,
16264 };
16268 CGameUserVoiceChat::EMuteSetting NewRemoteUser_DefaultMuteSetting;
16272 CVoiceChatConfig::ESyncMode SyncMode;
16276 Text Manual_Channel;
16280 Void Manual_ClearUsers();
16284 CGameUserVoiceChat Manual_UserAdd_Proc(Text WebServicesUserId);
16285};
16286
16294public :
16298 enum Type {
16299 LayerCustomEvent,
16300 KeyPress,
16301 (reserved),
16302 MenuNavigation,
16303 CursorSelectionBegin,
16304 CursorSelectionEnd,
16305 CursorChange,
16306 MapModified,
16307 EditorInput,
16308 MapSavedOrSaveCancelled,
16309 EditAnchor,
16310 EditObjectives,
16311 StartValidation,
16312 StartTest,
16313 };
16317 enum EInput {
16318 Unknown,
16319 Menu,
16320 SwitchToRace,
16321 Undo,
16322 Redo,
16323 CursorUp,
16324 CursorRight,
16325 CursorDown,
16326 CursorLeft,
16327 CursorRaise,
16328 CursorLower,
16329 CursorTurn,
16330 CursorTurnSlightly,
16331 CursorTurnSlightlyAntiClockwise,
16332 CursorTiltLeft,
16333 CursorTiltRight,
16334 CursorPick,
16335 CursorPlace,
16336 CursorDelete,
16337 CameraUp,
16338 CameraRight,
16339 CameraDown,
16340 CameraLeft,
16341 CameraZoomNext,
16342 Camera0,
16343 Camera1,
16344 Camera3,
16345 Camera7,
16346 Camera9,
16347 PivotChange,
16348 IconUp,
16349 IconRight,
16350 IconDown,
16351 IconLeft,
16352 RemoveAll,
16353 Save,
16354 SelectAll,
16355 Copy,
16356 Cut,
16357 Paste,
16358 };
16362 CMapEditorPluginEvent::Type const Type;
16366 CMapEditorPluginEvent::EInput const Input;
16370 Ident const EditedAnchorDataId;
16374 Boolean const IsFromPad;
16378 Boolean const IsFromMouse;
16382 Boolean const IsFromKeyboard;
16386 Boolean const OnlyScriptMetadataModified;
16390 Boolean const MapSavedOrSaveCancelled;
16391};
16392
16397public :
16401 CMacroblockModel * const MacroblockModel;
16405 CBlockClipList * const ClipList;
16409 CMapEditorPlugin::CardinalDirections Dir;
16413 Int3 const Coord;
16417 Integer Order;
16421 Integer UserData;
16425 Array<Int3> UnitCoords;
16429 CMapEditorPlugin::MapElemColor const Color;
16433 Boolean const ForceMacroblockColor;
16437 Int3 GetSize();
16438};
16439
16443class CBlock : public CNod {
16444public :
16448 enum CardinalDirections {
16449 North,
16450 East,
16451 South,
16452 West,
16453 };
16457 Boolean const CanHaveAnchor;
16461 Void UseDefaultAnchor();
16465 Void UseCustomAnchor();
16469 Int3 const Coord;
16473 CMapEditorPlugin::CardinalDirections const Dir;
16477 CBlock::CardinalDirections const Direction;
16481 Array<CBlockUnit* const > BlockUnits;
16485 CBlockModel * const BlockModel;
16489 Boolean IsGhostBlock();
16490};
16491
16495class CItemAnchor : public CNod {
16496public :
16500 Vec3 const Position;
16504 CGameItemModel * const ItemModel;
16505};
16506
16513class CAnchorData : public CNod {
16514public :
16518 enum EWaypointType {
16519 Start,
16520 Finish,
16521 Checkpoint,
16522 None,
16523 StartFinish,
16524 Dispenser,
16525 };
16529 Text const DefaultTag;
16533 Integer const DefaultOrder;
16537 Text Tag;
16541 Integer Order;
16545 Text RuntimeCustomMarker;
16549 CAnchorData::EWaypointType const WaypointType;
16553 Vec3 const Position;
16554};
16555
16560public :
16564 CMapEditorInventoryDirectory * const CurrentRootNode;
16568 CMapEditorInventoryDirectory * const CurrentDirectory;
16572 CMapEditorInventoryNode * const CurrentSelectedNode;
16580 Void EnterDirectory();
16584 Void LeaveDirectory();
16588 Void SelectArticle(CMapEditorInventoryArticle NodeArticle);
16592 Void OpenDirectory(CMapEditorInventoryDirectory NodeDirectory);
16596 Void SelectNode(CMapEditorInventoryNode Node);
16600 Void OpenBrotherDirectory(Boolean NextOrElsePrevious);
16604 Void SelectBrotherArticle(Boolean NextOrElsePrevious);
16608 Void SelectBrotherNode(Boolean NextOrElsePrevious);
16625};
16626
16630class CBlockModel : public CCollector {
16631public :
16635 enum EWayPointType {
16636 Start,
16637 Finish,
16638 Checkpoint,
16639 None,
16640 StartFinish,
16641 Dispenser,
16642 };
16646 Text const Name;
16650 Boolean const IsRoad;
16654 Boolean const IsTerrain;
16658 Boolean const IsPodium;
16662 CBlockModel::EWayPointType const WaypointType;
16666 Boolean const NoRespawn;
16670 Boolean const IsClip;
16674 CBlockModelVariantGround * const VariantGround;
16678 CBlockModelVariantAir * const VariantAir;
16679};
16680
16689public :
16693 Boolean const IsGround;
16697 Boolean const HasStart;
16701 Boolean const HasFinish;
16705 Boolean const HasCheckpoint;
16709 Boolean const HasMultilap;
16713 CBlockModel * const GeneratedBlockModel;
16717 Void ClearScriptMetadata();
16721 Text const Name;
16722};
16723
16728public :
16729};
16730
16734class CBlockClipList : public CNod {
16735public :
16743 Int3 const Size;
16747 Boolean SetClipListFromMacroblock(CMacroblockModel MacroBlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
16751 Boolean SetClipListFromMacroblock(CMacroblockModel MacroBlockModel);
16755 Boolean SetClipListFromBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
16759 Boolean SetClipListFromBlock(CBlockModel BlockModel);
16763 Void CreateAndAddClip(Text Name,Int3 Coord,Int3 Offset,CMapEditorPlugin::CardinalDirections Dir,Integer ClipId);
16767 Boolean SetFromClipList(CBlockClipList ClipList,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
16771 Void RemoveClip(CBlockClip Clip);
16775 Void ClearClips();
16779 Void Destroy();
16780};
16781
16785class CBlockClip : public CNod {
16786public :
16790 Text const Name;
16794 CMapEditorPlugin::CardinalDirections Dir;
16798 Int3 const Coord;
16802 Int3 const Offset;
16806 Integer ClipId;
16810 Int3 GetConnectableCoord();
16811};
16812
16816class CMapEditorCamera : public CNod {
16817public :
16821 enum EZoomLevel {
16822 Close,
16823 Medium,
16824 Far,
16825 };
16829 enum ECameraVStep {
16830 Low,
16831 MediumLow,
16832 Medium,
16833 MediumHigh,
16834 High,
16835 };
16839 Void ReleaseLock();
16843 Void CenterOnCursor();
16847 Void WatchStart();
16851 Void WatchClosestFinishLine();
16855 Void WatchClosestCheckpoint();
16859 Void WatchWholeMap();
16863 Void WatchCustomSelection();
16867 Void MoveToMapCenter();
16871 Boolean GetLock();
16875 Boolean CanUse();
16879 Void IgnoreCameraCollisions(Boolean IgnoreCameraCollisions);
16883 Void TurnH(Boolean Clockwise);
16887 Void TurnH(Boolean Clockwise,Boolean HalfSteps);
16891 Void TurnH(Boolean Clockwise,Boolean HalfSteps,Boolean Smooth);
16895 Void TurnV(Boolean UpOrElseDown);
16899 Void TurnV(Boolean UpOrElseDown,Boolean Smooth);
16903 Void Move(CMapEditorPlugin::RelativeDirections RelativeDir);
16907 Void FollowCursor(Boolean Follow);
16911 Void CenterOnCursor(Boolean Smooth);
16915 Void MoveToMapCenter(Boolean Smooth);
16919 Void Watch(CBlock Block);
16923 Void Watch(CBlock Block,Boolean Smooth);
16927 Void Watch(CMacroblockInstance Macroblock);
16931 Void Watch(CMacroblockInstance Macroblock,Boolean Smooth);
16935 Void Watch(CBlockClip Clip);
16939 Void Watch(CBlockClip Clip,Boolean Smooth);
16943 Void WatchStart(Boolean Smooth);
16947 Void WatchClosestFinishLine(Boolean Smooth);
16951 Void WatchClosestCheckpoint(Boolean Smooth);
16955 Void WatchWholeMap(Boolean Smooth);
16959 Void WatchMacroblocks(Integer UserData);
16963 Void WatchMacroblocks(Integer UserData,Boolean Smooth);
16967 Void ZoomIn(Boolean Loop);
16971 Void ZoomIn(Boolean Loop,Boolean Smooth);
16975 Void ZoomOut(Boolean Loop);
16979 Void ZoomOut(Boolean Loop,Boolean Smooth);
16983 Void Zoom(CMapEditorCamera::EZoomLevel Level);
16987 Void Zoom(CMapEditorCamera::EZoomLevel Level,Boolean Smooth);
16991 Void Look(CMapEditorPlugin::CardinalDirections8 Direction);
16995 Void Look(CMapEditorPlugin::CardinalDirections8 Direction,Boolean Smooth);
16999 Void Look(CMapEditorPlugin::CardinalDirections Direction);
17003 Void Look(CMapEditorPlugin::CardinalDirections Direction,Boolean Smooth);
17007 Void SetVStep(CMapEditorCamera::ECameraVStep Step);
17011 Void WatchCustomSelection(Boolean WatchCustomSelection);
17015 Void ActivateScrollRotateMode(Boolean ActivateScrollRotateMode);
17016};
17017
17021class CMapEditorCursor : public CNod {
17022public :
17026 Void ReleaseLock();
17030 Int3 Coord;
17034 CMapEditorPlugin::CardinalDirections Dir;
17038 CBlockModel * BlockModel;
17042 CBlockModel * TerrainBlockModel;
17046 CMacroblockModel * MacroblockModel;
17050 Real Brightness;
17054 Boolean HideDirectionalArrow;
17058 Void MoveToCameraTarget();
17062 Void ResetCustomRGB();
17066 Boolean GetLock();
17070 Boolean CanUse();
17074 Boolean Raise();
17078 Boolean Lower();
17082 Void FollowCameraTarget(Boolean Follow);
17086 Void Rotate(Boolean CWOrCCW);
17090 Void Move(CMapEditorPlugin::CardinalDirections CardinalDir);
17094 Void Move(CMapEditorPlugin::CardinalDirections8 CardinalDir8);
17098 Void Move(CMapEditorPlugin::RelativeDirections RelativeDir);
17102 Void DisableMouseDetection(Boolean Disable);
17106 Boolean CanPlace();
17110 Boolean IsCustomRGBActivated();
17114 Boolean IsCurrentItemAnimated();
17118 Boolean CurrentMacroblockHasAnimatedItem();
17122 Boolean CurrentSelectionHasAnimatedItem();
17126 Void SetCustomRGB(Vec3 Color);
17127};
17128
17133public :
17137 Boolean CanPlace;
17141 Int3 Coord;
17145 CMapEditorPlugin::CardinalDirections Dir;
17146};
17147
17151class CUIConfigMarker : public CNod {
17152public :
17156 enum EAnchorType {
17157 Invalid,
17158 Position,
17159 Player,
17160 Entity,
17161 Landmark,
17162 GhostInstance,
17163 };
17167 enum EMiniMapVisibility {
17168 Never,
17169 Always,
17170 WhenInFrame,
17171 };
17175 enum EHudVisibility {
17176 Never,
17177 Always,
17178 WhenInFrustum,
17179 WhenVisible,
17180 WhenInMiddleOfScreen,
17181 };
17185 CUIConfigMarker::EAnchorType const Type;
17189 Boolean IsTurning;
17193 Boolean ShowArmor;
17197 Text Label;
17201 Vec3 Box;
17205 Text Icon;
17209 Vec3 Color;
17213 Text ImageUrl;
17217 Text ManialinkFrameId;
17221 Real DistMin;
17229 CUIConfigMarker::EMiniMapVisibility MiniMapVisibility;
17233 CUIConfigMarker::EHudVisibility HudVisibility;
17242 Real Gauge;
17243};
17244
17252class CMapLandmark : public CNod {
17253public :
17261 Text const Tag;
17265 Integer const Order;
17269 Vec3 const Position;
17273 CMapSector * const Sector;
17277 CMapWaypoint * const Waypoint;
17281 CMapSpawn * const PlayerSpawn;
17285 CMapBotPath * const BotPath;
17289 CMapBotSpawn * const BotSpawn;
17293 CMapObjectAnchor * const ObjectAnchor;
17294};
17295
17303public :
17307 enum EType {
17308 Unknown,
17309 OnModuleCustomEvent,
17310 OnModuleShowRequest,
17311 OnModuleHideRequest,
17312 OnModuleStorePurchase,
17313 OnModuleInventoryDrop,
17314 OnModuleInventoryEquip,
17315 OnLayerCustomEvent,
17316 };
17320 enum EModuleType {
17321 Undefined,
17322 Hud,
17323 Inventory,
17324 Store,
17325 ScoresTable,
17326 Equipment,
17327 MenuBase,
17328 MenuPage,
17329 Chrono,
17330 SpeedMeter,
17331 PlayerState,
17332 TeamState,
17333 };
17337 CUIConfigEvent::EType const Type;
17341 CUIConfig * const UI;
17345 CUIConfigEvent::EModuleType const ModuleType;
17349 Text const Param1;
17353 Array<Text> Param2;
17357 CUILayer * const CustomEventLayer;
17361 Text const CustomEventType;
17365 Array<Text> CustomEventData;
17369 Text const ItemUrl;
17373 Integer const Quantity;
17374};
17375
17379class CServerInfo : public CNod {
17380public :
17384 Text const ServerName;
17388 Text const ServerLogin;
17392 Text const JoinLink;
17396 Text const Comment;
17400 Text const ServerVersionBuild;
17404 Integer const PlayerCount;
17408 Integer const MaxPlayerCount;
17412 Integer const SpectatorCount;
17416 Integer const MaxSpectatorCount;
17420 Real const PlayersLevelMin;
17424 Real const PlayersLevelAvg;
17428 Real const PlayersLevelMax;
17432 Text const ModeName;
17436 Real const LadderServerLimitMax;
17440 Real const LadderServerLimitMin;
17444 Array<Text> PlayerNames;
17448 Array<Text> ChallengeNames;
17452 Array<Text> ChallengeIds;
17456 Integer const NbChallenges;
17460 Boolean const HasBuddies;
17464 Boolean const IsFavourite;
17468 Boolean const IsLobbyServer;
17472 Boolean const IsPrivate;
17476 Boolean const IsPrivateForSpectator;
17480 Boolean const IsMapDownloadAllowed;
17484 Boolean const IsTeamMode;
17488 Boolean const IsDisableChangeTeams;
17492 Text const SendToServerAfterMatchUrl;
17496 Integer const ViewerCount;
17497};
17498
17506public :
17510 enum EType {
17511 Unknown,
17512 Callback,
17513 CallbackArray,
17514 };
17518 CXmlRpcEvent::EType const Type;
17522 Text const Param1;
17526 Text const Param2;
17530 Text const ParamArray1;
17534 Array<Text> ParamArray2;
17535};
17536
17540class CTmRaceResultNod : public CNod {
17541public :
17545 enum ETmRaceResultCriteria {
17546 Time,
17547 Stunts,
17548 NbRespawns,
17549 CheckpointsProgress,
17550 None,
17551 };
17555 Integer Time;
17559 Integer Score;
17563 Integer NbRespawns;
17567 Ident SpawnLandmarkId;
17571 Array<Integer> Checkpoints;
17575 Array<Ident> CheckpointLandmarkIds;
17579 Integer Compare(CTmRaceResultNod Other,CTmRaceResultNod::ETmRaceResultCriteria Criteria);
17580};
17581
17585class CNotification : public CNod {
17586public :
17590 Text const Type;
17591};
17592
17597public :
17601 CModulePlaygroundInventory * Inventory;
17605 CModulePlaygroundStore * Store;
17609 CModulePlaygroundScoresTable * ScoresTable;
17613 CModulePlaygroundChrono * Chrono;
17617 CModulePlaygroundSpeedMeter * SpeedMeter;
17621 CModulePlaygroundPlayerState * PlayerState;
17625 CModulePlaygroundTeamState * TeamState;
17633 Void SwitchContext(CPlayer Player,Text ContextName);
17637 Void SetDefaultContext(CPlayer Player);
17641 Ident RetrieveModuleId(Text ModuleName);
17642};
17643
17657
17661class CModeTurretManager : public CNod {
17662public :
17666 Void MapTurrets_Reset();
17670 CModeTurret Turret_Create(Ident ModelId,Vec3 Position,Vec3 Direction,Integer Clan,CPlayer OwnerPlayer);
17674 CModeTurret Turret_CreateWithOwner(Ident ModelId,Vec3 Position,Vec3 Direction,Vec3 Up,Integer Clan,Ident OwnerId);
17678 CModeTurret Turret_CreateWithOwner(Ident ModelId,Vec3 Position,Vec3 Direction,Vec3 Up,Integer Clan,Ident OwnerId,Boolean AutoAimOn,Boolean AutoTriggerOn);
17682 Vec3 Turret_GetPosition(CModeTurret Turret);
17686 Void Turret_Destroy(CModeTurret Turret);
17690 Void Turret_DestroyAll();
17694 Void Turret_Activate(CModeTurret Turret);
17698 Void Turret_Deactivate(CModeTurret Turret);
17702 Void Turret_SetIsAutomatic(CModeTurret Turret,Boolean IsAuto);
17706 Void Turret_Auto_SetAimAnticipation(CModeTurret Turret,Real AimAnticipationMs);
17710 Void Turret_Auto_SetFirePeriod(CModeTurret Turret,Integer FirePeriodMs);
17714 Void Turret_Auto_SetTargetDetectionFov(CModeTurret Turret,Real DectectionFOVDeg);
17718 Void Turret_Auto_SetTargetDetectionRadius(CModeTurret Turret,Real DetectionRadius);
17722 Void Turret_Manual_SetTargetPos(CModeTurret Turret,Vec3 TargetPos);
17726 Void Turret_Manual_Fire(CModeTurret Turret);
17730 Array<CModeTurret*> Turrets;
17731};
17732
17737public :
17741 enum EArmorUse {
17742 Self,
17743 Group,
17744 Owner,
17745 Children,
17746 Mine,
17747 };
17751 enum ESlotType {
17752 Driver,
17753 Passenger,
17754 };
17758 Void MapVehicles_Reset();
17762 Void DestroyAllVehicles();
17766 CModeVehicle Vehicle_Create(Ident ModelId,Integer Clan,Integer Armor,CModeVehicleManager::EArmorUse ArmorUse,CMapSpawn Spawn);
17770 CModeVehicle Vehicle_Create(Ident ModelId,Vec3 Offset,Integer Armor,CModeVehicleManager::EArmorUse ArmorUse,CModeVehicle Owner);
17774 Void Vehicle_Destroy(CModeVehicle Vehicle);
17778 Void Vehicle_Assign_AutoPilot(CModeVehicle Vehicle,Text ModelName);
17782 Void Vehicle_Assign_AutoPilot(CModeVehicle Vehicle,Text ModelName,Boolean LoopPath);
17786 Void Vehicle_SetTrailVisible(CModeVehicle Vehicle,Boolean IsVisible);
17790 Void Vehicle_SetShieldVisible(CModeVehicle Vehicle,Boolean IsVisible);
17794 Integer VehicleModel_GetSlotsCount(Ident ModelId,CModeVehicleManager::ESlotType SlotType);
17798 Array<CModeVehicle*> Vehicles;
17799};
17800
17804class CActionManager : public CNod {
17805public :
17809 enum EActionSlot {
17810 Slot_A,
17811 Slot_B,
17812 Slot_C,
17813 Slot_D,
17814 Slot_E,
17815 Slot_F,
17816 Slot_G,
17817 Slot_H,
17818 };
17822 CActionInterface Action_GetState(CPlayer Player,CActionManager::EActionSlot Slot);
17826 CActionInterface Action_GetState(CModeVehicle Vehicle,Integer VehicleSlotIndex,CActionManager::EActionSlot Slot);
17830 CActionInterface Action_GetState(CModeTurret Turret,CActionManager::EActionSlot Slot);
17835};
17836
17850
17864
17868class CSmPlayerDriver : public CNod {
17869public :
17873 enum ESmDriverBehaviour {
17874 Static,
17875 Turret,
17876 Scripted,
17877 IA,
17878 Patrol,
17879 Escape,
17880 Saunter,
17881 Orbit,
17882 Follow,
17883 };
17887 enum ESmDriverPathState {
17888 Static,
17889 None,
17890 Computing,
17891 Simple,
17892 Full,
17893 Incomplete,
17894 InFlock,
17895 };
17899 enum ESmDriverPatrolMode {
17900 OneTrip,
17901 BackAndForth,
17902 Loop,
17903 };
17907 enum ESmAttackFilter {
17908 All,
17909 AllPlayers,
17910 AllBots,
17911 AllOpposite,
17912 OppositePlayers,
17913 OppositeBots,
17914 Nobody,
17915 };
17919 CSmPlayerDriver::ESmDriverBehaviour Behaviour;
17923 Boolean PursueTarget;
17927 Real AggroRadius;
17931 Real ShootRadius;
17935 Real TargetMinDistance;
17939 Real DisengageDistance;
17943 Real PathSpeedCoef;
17947 Real Accuracy;
17951 Integer ReactionTime;
17955 Integer ShootPeriodMin;
17959 Integer ShootPeriodMax;
17963 Boolean RocketAnticipation;
17971 CSmPlayerDriver::ESmAttackFilter AttackFilter;
17975 CSmPlayer * const Target;
17979 Boolean const IsStuck;
17983 CSmPlayerDriver::ESmDriverPathState const PathState;
17987 CSmPlayer * const Owner;
17991 Void Scripted_Move(Vec3 Goal);
17995 Void Scripted_MoveDelta(Vec3 Delta);
17999 Void Scripted_MoveAndAim(Vec3 Goal);
18003 Void Scripted_MoveDeltaAndAim(Vec3 Delta);
18007 Void Scripted_Aim(Vec3 Goal);
18011 Void Scripted_AimDelta(Real DeltaYaw,Real DeltaPitch);
18023 Void Scripted_RequestInput(CSmMode::EActionInput Input);
18027 CSmPlayerDriver::ESmDriverPatrolMode Patrol_Mode;
18031 CMapBotPath * Patrol_Path;
18039 Real Escape_DistanceSafe;
18043 Real Escape_DistanceMinEscape;
18047 Real Escape_DistanceMaxEscape;
18055 Integer Saunter_BaseChillingTime;
18059 Integer Saunter_ChillingTimeDelta;
18063 Real Saunter_Radius;
18071 Real Orbit_Radius;
18075 Boolean Orbit_IsClockWise;
18079 Boolean Scripted_ForceAimInMoveDir;
18083 Vec3 Follow_Offset;
18087 Boolean Follow_ForceAimInLeaderDir;
18091 Boolean Follow_HasLeader;
18095 CSmPlayer * Follow_Leader;
18099 Vec3 Follow_AnchorPoint;
18103 CSmPlayer * ForcedTarget;
18107 Array<CSmPlayer*> TargetsToAvoid;
18111 Boolean PredictJump;
18115 Boolean UsePathFinding;
18119 CSmMode::EActionInput OnStuckInput;
18123 Real MaxPathDivergence;
18166};
18167
18175public :
18179 Boolean const HasBeenPassed;
18183 Boolean const HasBeenDiscarded;
18184};
18185
18189class CSmMapGate : public CNod {
18190public :
18194 Integer Clan;
18198 Boolean Automatic;
18202 Boolean ManualClosed;
18206 Boolean const AutoClosed;
18210 Boolean AutoIsActive;
18214 Integer AutoCloseDelay;
18218 Integer AutoOpenSpeed;
18219};
18220
18224class CSmMapGauge : public CNod {
18225public :
18229 Integer Clan;
18237 Integer Value;
18241 Integer Max;
18245 Integer Speed;
18249 Boolean Captured;
18250};
18251
18255class CMapObjectAnchor : public CNod {
18256public :
18260 Text const ItemName;
18264 Ident const ItemModelId;
18265};
18266
18274class CPlaygroundClient : public CNod {
18275public :
18279 enum ESpectatorCameraType {
18280 Replay,
18281 Follow,
18282 Free,
18283 StandardCount,
18284 NotUsed0,
18285 NotUsed1,
18286 NotUsed2,
18287 NotUsed3,
18288 NotUsed4,
18289 NotUsed5,
18290 NotUsed6,
18291 NotUsed7,
18292 NotUsed8,
18293 NotUsed9,
18294 FollowForced,
18295 DontChange,
18296 };
18300 enum ESpectatorTargetType {
18301 None,
18302 Single,
18303 AllPlayers,
18304 AllMap,
18305 };
18309 CMap * const Map;
18313 Integer const GameTime;
18317 CUser * const LocalUser;
18321 CUIConfig * const UI;
18325 CServerInfo * const ServerInfo;
18329 Ident const SettingsPlayerModelId;
18333 Boolean const HasPodium;
18345 Boolean const UseClans;
18349 Boolean const UseForcedClans;
18353 Boolean const IsLoadingScreen;
18357 Boolean const IsServerOrSolo;
18361 Void QuitServer(Boolean Silent);
18365 Void QuitServerAndSetResult(Boolean Silent,Text Type,Array<Text> Data);
18369 Boolean const IsInGameMenuDisplayed;
18373 Void JoinTeam1();
18377 Void JoinTeam2();
18389 Void SetSpectateTarget(Text Player);
18393 Void ShowProfile(Text Player);
18401 Boolean SavePrevReplay(Text FileName);
18409 Void MapList_Request();
18413 CPlaygroundClient::ESpectatorCameraType GetSpectatorCameraType();
18417 CPlaygroundClient::ESpectatorTargetType GetSpectatorTargetType();
18421 Void SetWantedSpectatorCameraType(CPlaygroundClient::ESpectatorCameraType CameraType);
18425 Boolean const MapList_IsInProgress;
18429 Array<Text> MapList_Names;
18433 Array<Text> MapList_MapUids;
18437 Boolean const Request_IsInProgress;
18441 Boolean const Request_Success;
18445 Void RequestRestartMap();
18449 Void RequestNextMap();
18453 Void RequestGotoMap(Text MapUid);
18457 Void RequestSetNextMap(Text MapUid);
18461 Void RequestAutoTeamBalance();
18470 Text const Vote_Question;
18474 Boolean const Vote_CanVote;
18478 Void Vote_Cast(Boolean Answer);
18479};
18480
18489public :
18497 CPlaygroundClient * const Playground;
18501 CMap * const Map;
18505 CGhostManager * const GhostMgr;
18517 Integer const SplitScreenCount;
18525 CVoiceChatConfig * const VoiceChat;
18526};
18527
18531class CMlScript_ReadOnly : public CNod {
18532public :
18536 enum ESystemPlatform {
18537 None,
18538 Steam,
18539 UPlay,
18540 PS4,
18541 XBoxOne,
18542 PS5,
18543 XBoxSeries,
18544 Stadia,
18545 Luna,
18546 };
18550 enum ESystemSkuIdentifier {
18551 Unknown,
18552 EU,
18553 US,
18554 JP,
18555 CN,
18556 };
18560 CMlPage * Page;
18564 Boolean PageIsVisible;
18568 Boolean PageAlwaysUpdateScript;
18572 Integer Now;
18576 Integer Period;
18580 Integer CurrentTime;
18584 Text CurrentTimeText;
18588 Text CurrentLocalDateText;
18592 Text CurrentTimezone;
18596 CUser const * const LocalUser;
18600 CTitle const * const LoadedTitle;
18604 CMlScript_ReadOnly::ESystemPlatform SystemPlatform;
18608 CMlScript_ReadOnly::ESystemSkuIdentifier SystemSkuIdentifier;
18612 CParsingManager * Xml;
18616 CVideoManager * Video;
18620 CInputManager * Input;
18624 CAnimManager * AnimMgr;
18625};
18626
18631public :
18635 enum EFileType {
18636 Maps,
18637 Skins,
18638 Items,
18639 Blocks,
18640 Scripts,
18641 Images,
18642 Manialinks,
18643 Packs,
18644 Actions,
18645 Modules,
18646 Meshes,
18647 Replays,
18648 };
18652 enum EFileAction {
18653 Select,
18654 Save,
18655 MultiSelect,
18656 };
18660 Boolean const HasFinished;
18664 Array<Text> Selection;
18668 Void SetFileType(CModuleMenuFileBrowser::EFileType FileType);
18672 Void SetFileAction(CModuleMenuFileBrowser::EFileAction FileAction);
18673};
18674
18679public :
18683 Void Reset(CPlayer Player);
18684};
18685
18690public :
18694 Void Reset(CPlayer Player);
18695};
18696
18701public :
18705 Void Reset(CPlayer Player);
18709 Void SetGlobalScale(Real Scale);
18713 Void SetGaugeNumber(Integer Number);
18717 Void SetGaugeAngle(Real Angle);
18721 Void SetGaugeBGVisible(Boolean Visibility);
18725 Void SetSpeedLineVisible(Boolean Visibility);
18729 Void SetGaugeSpeedMax(Real Maximum);
18733 Void SetSpeedValueScale(Real Scale);
18737 Void SetSpeedUnitScale(Real Scale);
18741 Void SetFooterUnitVisible(Boolean Visibility);
18745 Void SetFooterLineVisible(Boolean Visibility);
18749 Void SetDistanceVisible(Boolean Visibility);
18753 Void SetDistanceFooterLineVisible(Boolean Visibility);
18754};
18755
18760public :
18764 Void StopChrono();
18768 Void StartChrono();
18772 Void Reset();
18776 Void Reset(CPlayer Player);
18777};
18778
18783public :
18787 enum EColumnType {
18788 CustomString,
18789 CustomNatural,
18790 CustomInteger,
18791 CustomReal,
18792 CustomTime,
18793 Avatar,
18794 Name,
18795 ManiaStars,
18796 Tools,
18797 Tags,
18798 TMBestTime,
18799 TMPrevTime,
18800 TMBestLapTime,
18801 TMStunts,
18802 TMRespawns,
18803 TMCheckpoints,
18804 TMPoints,
18805 TMPrevRaceDeltaPoints,
18806 SMPoints,
18807 SMRoundPoints,
18808 };
18812 enum EScoreSortOrder {
18813 Default,
18814 Name,
18815 LadderRanking,
18816 TMPoints,
18817 TMBestTime,
18818 TMBestLapTime,
18819 TMStunts,
18820 TMRespawns,
18821 TMCheckpoints,
18822 TMPrevTime,
18823 SMPoints,
18824 SMRoundPoints,
18825 };
18829 Void SetFooterText(Text FooterText);
18833 Void ResetCustomColumns(CScore Score);
18837 Void ResetCustomColumns();
18841 Void Scores_Sort(CModulePlaygroundScoresTable::EScoreSortOrder SortOrder);
18845 Void SetColumnValue(CScore Score,Text ColumnId,Text ColumnValue);
18849 Void SetColumnValue(CScore Score,Text ColumnId,Integer ColumnValue);
18853 Void SetColumnValue(CScore Score,Text ColumnId,Real ColumnValue);
18857 Void SetColumnVisibility(CModulePlaygroundScoresTable::EColumnType Type,Boolean Visibility);
18861 Void SetColumnVisibility(Text ColumnId,Boolean Visibility);
18865 Void SetColor(CScore Score,Vec3 Color);
18869 Void ResetColor(CScore Score);
18870};
18871
18876public :
18880 Integer AddItem(CPlayer Player,Text Url,Integer Quantity);
18884 Boolean AddAction(CPlayer Player,Text Url);
18888 Integer RemoveInventoryItem(CPlayer Player,Text Url,Integer Quantity);
18892 Integer GetInventoryItemQuantity(CPlayer Player,Text Url);
18896 Boolean IsInventoryItemStored(CPlayer Player,Text Url);
18900 Array<Text> GetStoredItemsList(CPlayer Player);
18904 Array<Text> GetStoredActionsList(CPlayer Player);
18905};
18906
18911public :
18915 Void Reset();
18919 Void Reset(CPlayer Player);
18923 Void SetMoney(CPlayer Player,Integer Amount);
18927 Integer GetMoney(CPlayer Player);
18931 Boolean AddMoney(CPlayer Player,Integer Amount);
18935 Boolean SubMoney(CPlayer Player,Integer Amount);
18939 Void SetActionLevel(CPlayer Player,Text ActionUrl,Integer ActionLevel);
18943 Integer GetActionLevel(CPlayer Player,Text ActionUrl);
18947 Void SetItemCanBeBought(CPlayer Player,Text ActionUrl,Boolean CanBeBought);
18951 Boolean GetItemCanBeBought(CPlayer Player,Text ActionUrl);
18952};
18953
18960class CEditorBase : public CNod {
18961public :
18962};
18963
18967class CModuleMenuModel : public CNod {
18968public :
18976 CModuleMenuPageModel AddPage(Text PageUrl);
18980 Void AddLink(CModuleMenuPageModel ParentPage,CModuleMenuPageModel ChildPage);
18984 Text MenuScript;
18985};
18986
18991public :
18995 Text ManialinkText;
18996};
18997
19002public :
19006 Ident ContextAdd(Text ContextName);
19010 Ident ContextSetId(Ident ContextId,Text NewContextName);
19014 Void ContextRemove(Ident ContextId);
19018 Array<Ident> ContextsIds;
19022 Array<CHudModule* const > SubModules;
19026 CHudModule NewSubModule(Text ModulePath);
19030 Void DeleteSubModule(CHudModule SubModule);
19034 Boolean SubModuleIsContextActive(CHudModule SubModule,Ident ContextId);
19038 Void SubModuleSetContextIsActive(CHudModule SubModule,Ident ContextId,Boolean IsActive);
19042 Integer const EditorContextIndex;
19043};
19044
19052public :
19056 enum Type {
19057 LayerCustomEvent,
19058 KeyPress,
19059 (reserved),
19060 MenuNavigation,
19061 Exit,
19062 FileNew,
19063 FileOpen,
19064 FileSave,
19065 FileSaveAs,
19066 };
19070 CEditorPluginModuleEvent::Type const Type;
19074 Void Eat();
19075};
19076
19084public :
19085};
19086
19090class CImage : public CNod {
19091public :
19092};
19093
19101public :
19105 enum Type {
19106 LayerCustomEvent,
19107 KeyPress,
19108 (reserved),
19109 MenuNavigation,
19110 FileChanged,
19111 Exit,
19112 FileSave,
19113 OnUndo,
19114 OnRedo,
19115 OnSwitchedBack,
19116 CameraButtonOn,
19117 CameraButtonOff,
19118 VoxelUpdateMaterial,
19119 OpenUVEditor,
19120 CloseUVEditor,
19121 EnableUndo,
19122 DisableUndo,
19123 EnableRedo,
19124 DisableRedo,
19125 UpdateUI,
19126 UpdateSliders,
19127 UpdateMaterialsLibPage,
19128 MediaTrackerPopUp,
19129 HideUI,
19130 ShowUI,
19131 EnableFullScreen,
19132 DisableFullScreen,
19133 Autosave,
19134 };
19138 CEditorEvent::Type const Type;
19139};
19140
19144class CEditorPluginAPI : public CNod {
19145public :
19149 enum EEditorFileToolBar_QuadType {
19150 Quit,
19151 New,
19152 Open,
19153 SaveAs,
19154 Save,
19155 Import,
19156 Export,
19157 Close,
19158 Help,
19159 };
19163 Void NewFile();
19167 Void Undo();
19171 Void Redo();
19175 Void FileToolBarSendCmd(Text CmdName);
19179 Boolean SetToolBarButtonVisible(CEditorPluginAPI::EEditorFileToolBar_QuadType Type);
19180};
19181
19185class CMediaTrackerClip : public CNod {
19186public :
19190 Text Name;
19198 Boolean StopWhenRespawn;
19202 Boolean StopWhenLeave;
19206 Boolean TriggersBeforeRaceStart;
19207};
19208
19213public :
19218};
19219
19223class CMediaTrackerTrack : public CNod {
19224public :
19228 Text Name;
19233};
19234
19238class CMatchSettings : public CNod {
19239public :
19243 Text const Name;
19247 Text const FileName;
19251 Text ScriptModeName;
19255 Boolean ScriptModeName_Check(Text ScriptModeName);
19259 Void ScriptModeName_Set(Text ScriptModeName);
19263 Void ScriptSettings_SetToDefault();
19271 Boolean Playlist_FileExists(Text File);
19275 Boolean Playlist_FileMatchesMode(Text File);
19279 Void Playlist_Add(Text File);
19283 Void Playlist_Remove(Integer Index);
19287 Void Playlist_SwapUp(Integer Index);
19291 Void Playlist_SwapDown(Integer Index);
19292};
19293
19301class CManiaAppBase : public CManiaApp {
19302public :
19306 Array<CManiaAppEvent* const > PendingEvents;
19307};
19308
19313public :
19317 Ident const TitleId;
19321 Ident const MakerTitleId;
19325 Text DisplayName;
19329 Text Description;
19333 Text InfoUrl;
19337 Text DownloadUrl;
19341 Text TitleVersion;
19345 Text AllowedClientTitleVersion;
19349 Text BaseTitleIds;
19353 Text ForcedPlayerModel;
19357 Text Packaging_ImageFileName;
19361 Text Packaging_LogosFileName;
19365 Text Packaging_Group;
19373 Text Menus_BgReplayFileName;
19377 Text Menus_ManiaAppFileName;
19381 Text Menus_MusicFileName;
19389 Text FallbackFontFileName;
19393 Text Hud3dFontFileName;
19397 Text HudDefaultModuleScriptName;
19401 Text MusicFolder;
19405 Text Editor_MusicFileName;
19406};
19407
19411class CMlGraphCurve : public CNod {
19412public :
19416 Array<Vec2> Points;
19420 Vec3 Color;
19424 Void SortPoints();
19428 Text Style;
19433};
19434
19441class CMlFileEntry : public CMlEntry {
19442public :
19446 Boolean OnlyUserFiles;
19450 Void ClearFileNames();
19454 Text const FullFileName;
19458 Text const RelativeNameToRoot;
19462 Text const RelativeNameToTypeFolder;
19463};
19464
19468class CParsingNode : public CNod {
19469public :
19473 Text const Name;
19477 Text const TextContents;
19481 Text const TextRawContents;
19485 Text const TextRecursiveContents;
19493 Text GetAttributeText(Text Name,Text DefaultValue);
19497 Integer GetAttributeInteger(Text Name,Integer DefaultValue);
19501 Real GetAttributeReal(Text Name,Real DefaultValue);
19505 Boolean GetAttributeBoolean(Text Name,Boolean DefaultValue);
19509 CParsingNode GetFirstChild(Text Name);
19510};
19511
19515class CMapGroup : public CNod {
19516public :
19520 Array<CMapInfo* const > MapInfos;
19521};
19522
19532
19537public :
19541 Text const ActivityId;
19545 Integer const CreationTimeStamp;
19549 Text const CreatorAccountId;
19553 Text const CreatorWebServicesUserId;
19557 Text const CreatorDisplayName;
19561 Boolean const CreatorIsFirstPartyDisplayName;
19565 Text const ClubId;
19569 CNadeoServicesItemCollectionVersion * CurrentVersion;
19573 Text const DisplayName;
19577 Boolean const HasVersionList;
19581 Text const Id;
19585 Boolean const IsCurrentVersionNull;
19589 Text const Name;
19593 Text const Type;
19597 Integer const UpdateTimeStamp;
19602};
19603
19613
19621public :
19622};
19623
19627class CNadeoServicesMap : public CNod {
19628public :
19632 Text const AuthorAccountId;
19636 Text const AuthorWebServicesUserId;
19640 Text const AuthorDisplayName;
19644 Boolean const AuthorIsFirstPartyDisplayName;
19648 Integer const AuthorScore;
19652 Integer const BronzeScore;
19656 Text const CollectionName;
19660 Boolean const CreatedWithGamepadEditor;
19664 Boolean const CreatedWithSimpleEditor;
19668 Text const FileName;
19672 Text const FileUrl;
19676 Integer const GoldScore;
19680 Text const Id;
19684 Boolean const IsPlayable;
19688 Text const Name;
19692 Integer const SilverScore;
19696 Text const Style;
19700 Text const SubmitterAccountId;
19704 Text const SubmitterWebServicesUserId;
19708 Text const ThumbnailUrl;
19712 Integer const TimeStamp;
19716 Text const Type;
19720 Text const Uid;
19721};
19722
19730public :
19731};
19732
19740public :
19741};
19742
19746class CNadeoServicesSkin : public CNod {
19747public :
19751 Text const Checksum;
19755 Text const CreatorAccountId;
19759 Text const CreatorWebServicesUserId;
19763 Text const CreatorDisplayName;
19767 Boolean const CreatorIsFirstPartyDisplayName;
19771 Text const DisplayName;
19775 Text const FileName;
19779 Text const FileUrl;
19783 Text const Id;
19787 Text const Name;
19791 Text const ThumbnailUrl;
19795 Integer const TimeStamp;
19799 Text const Type;
19800};
19801
19809public :
19810};
19811
19815class CReplayInfo : public CNod {
19816public :
19820 Text const MapUid;
19824 Text const Name;
19828 Text const Path;
19832 Text const FileName;
19833};
19834
19839public :
19843 Text const Name;
19847 Text const Path;
19851 Text const Description;
19855 Text const Version;
19859 Array<Text> CompatibleMapTypes;
19860};
19861
19869public :
19870};
19871
19875class CMapRecord : public CNod {
19876public :
19880 Text const AccountId;
19884 Text const WebServicesUserId;
19888 Text const MapId;
19892 Ident const MapUid;
19896 Text const ScopeType;
19900 Text const ScopeId;
19904 Text const GameMode;
19908 Text const GameModeCustomData;
19912 Integer const Score;
19916 Integer const Time;
19920 Integer const RespawnCount;
19924 Integer const Timestamp;
19928 Integer const Medal;
19932 Integer const MultiAsyncLevel;
19936 Integer const SkillPoints;
19940 Text const FileName;
19944 Text const ReplayUrl;
19945};
19946
19954public :
19955};
19956
19960class CSeason : public CNod {
19961public :
19965 Text const CreatorAccountId;
19969 Text const CreatorWebServicesUserId;
19973 Text const GameMode;
19977 Text const GameModeCustomData;
19981 Text const MapRecordType;
19985 Text const Id;
19989 Text const Name;
19993 Integer const CreationTimeStamp;
19997 Integer const StartTimeStamp;
20001 Integer const EndTimeStamp;
20005 Array<CSeasonMapInfo*> MapInfoList;
20006};
20007
20015public :
20016};
20017
20025public :
20026};
20027
20037
20042public :
20046 Text const AccountId;
20050 Text const WebServicesUserId;
20054 Integer const T1Count;
20058 Integer const T2Count;
20062 Integer const T3Count;
20066 Integer const T4Count;
20070 Integer const T5Count;
20074 Integer const T6Count;
20078 Integer const T7Count;
20082 Integer const T8Count;
20086 Integer const T9Count;
20090 Integer const TimeStamp;
20091};
20092
20102
20107public :
20111 Text const Type;
20115 CTrophySoloMedalAchievementLevelSettings * AllBronzeLevelSettings;
20119 CTrophySoloMedalAchievementLevelSettings * AllSilverLevelSettings;
20123 CTrophySoloMedalAchievementLevelSettings * AllGoldLevelSettings;
20127 CTrophySoloMedalAchievementLevelSettings * AllAuthorLevelSettings;
20128};
20129
20137public :
20138};
20139
20143class CZone : public CNod {
20144public :
20148 Text const Id;
20152 Text const Name;
20156 Text const ParentId;
20160 Text const Path;
20164 Text const FullPath;
20168 Text const FlagUrl;
20172 Text const CountryFlagUrl;
20176 Text const Model_CarSport_SkinName;
20180 Text const Model_CarSport_SkinUrl;
20184 Text const Model_CharacterPilot_SkinName;
20188 Text const Model_CharacterPilot_SkinUrl;
20189};
20190
20194class CVehicleSettings : public CNod {
20195public :
20199 Text const ModelDisplayName;
20203 Text const ModelName;
20211 Text const SkinUrl;
20223 Boolean InvertSteer;
20227 Boolean AccelIsToggleMode;
20231 Boolean BrakeIsToggleMode;
20239 Boolean HapticFeedbackEnabled;
20244};
20245
20253public :
20254};
20255
20259class CFriend : public CNod {
20260public :
20264 Text const AccountId;
20268 Text const CountryFlagUrl;
20272 Text const DisplayName;
20276 Boolean const IsFirstPartyDisplayName;
20280 Text const PlatformType;
20284 Text const Presence;
20288 Text const Relationship;
20292 Text const WebServicesUserId;
20293};
20294
20302public :
20303};
20304
20308class CNews : public CNod {
20309public :
20313 Text const Id;
20317 Text const Type;
20321 Text const Placement;
20325 Text const Locale;
20329 Text const Title;
20333 Text const Body;
20337 Text const MediaUrl;
20341 Text const MediaType;
20345 Text const PublicationDate;
20349 Integer const Priority;
20353 Integer const DisplayTime;
20357 Array<CNewsLink*> LinkList;
20358};
20359
20367public :
20368};
20369
20373class CUserPrestige : public CNod {
20374public :
20378 Text const CategoryType;
20382 Integer const CategoryLevel;
20386 NWebServicesPrestige::EPrestigeMode const Mode;
20390 Text const PrestigeId;
20394 Integer const PrestigeLevel;
20398 Text const SkinOptions;
20402 Integer const TimeStamp;
20406 Integer const Year;
20407};
20408
20416public :
20417};
20418
20426public :
20427};
20428
20432class CPrestige : public CNod {
20433public :
20437 Text const CategoryType;
20441 Integer const CategoryLevel;
20445 Boolean const IsUnlocked;
20449 NWebServicesPrestige::EPrestigeMode const Mode;
20453 Text const PrestigeId;
20457 Integer const PrestigeLevel;
20461 Text const RewardDisplayName;
20465 Text const RewardFileUrl;
20469 Text const RewardThumbnailUrl;
20473 Text const RewardType;
20477 Text const SkinOptions;
20481 Integer const StatCurrentValue;
20485 Integer const StatValueForNextLevel;
20489 Integer const TimeStamp;
20493 Integer const Year;
20494};
20495
20503public :
20504};
20505
20509class CSquad : public CNod {
20510public :
20514 Integer const CreationTimeStamp;
20518 Text const LeaderAccountId;
20522 Text const LeaderWebServicesUserId;
20526 Text const Id;
20530 Boolean const IsLocked;
20534 Text const Name;
20538 Integer const Size;
20542 Text const Type;
20546 Integer const UpdateTimeStamp;
20550 Array<CSquadInvitation*> InvitationList;
20554 Array<CSquadMember*> MemberList;
20555};
20556
20564public :
20565};
20566
20570class CPackCreator : public CNod {
20571public :
20579 Boolean const RegisterPack_IsInProgess;
20583 CPackCreatorPack * const CurrentPack;
20591 Void Build_AddFile(Ident BuildId,Text FileName);
20595 Void Build_AddFolder(Ident BuildId,Text FolderName);
20599 Void Build_AddFile(Ident BuildId,Text FileName,Boolean IsPublic,Boolean IsInternal,Boolean NoAutomaticDeps);
20603 Void Build_AddFolder(Ident BuildId,Text FolderName,Boolean IsPublic,Boolean IsInternal,Boolean NoRecursion,Boolean NoAutomaticDeps);
20607 Void Build_Generate(Ident BuildId,Boolean Upload);
20611 Boolean Build_IsGenerated(Ident BuildId);
20615 Text Build_ErrorMessage(Ident BuildId);
20619 Void Build_End(Ident BuildId);
20620};
20621
20626public :
20630 enum EType {
20631 NewNotification,
20632 NotificationChanged,
20633 };
20637 CNotificationsConsumerEvent::EType const Type;
20642};
20643
20648public :
20652 enum ENotificationPriority {
20653 Memo,
20654 Notice,
20655 Alarm,
20656 };
20660 Text const Title;
20664 Text const Description;
20668 Text const ImageUrl;
20672 CNotificationsConsumerNotification::ENotificationPriority const Priority;
20676 Boolean const HasBeenRead;
20680 Boolean const HasBeenActivated;
20689};
20690
20694class CBlockUnit : public CNod {
20695public :
20699 Int3 const AbsoluteOffset;
20703 CBlockUnitModel * const BlockUnitModel;
20707 CBlock * const Block;
20708};
20709
20714public :
20722 Boolean const HasChildDirectory;
20726 Boolean const HasChildArticle;
20727};
20728
20733public :
20737 Text const NodeName;
20741 Boolean const IsDirectory;
20745 CMapEditorInventoryDirectory * const ParentNode;
20749 CNod GetCollectorNod();
20750};
20751
20756public :
20757};
20758
20762class CCollector : public CNod {
20763public :
20767 Text const Name;
20771 Text PageName;
20775 Integer InterfaceNumber;
20779 CImage * const Icon;
20783 Text const SkinDirectory;
20784};
20785
20790public :
20791};
20792
20797public :
20798};
20799
20803class CMapSector : public CNod {
20804public :
20808 Array<Ident> PlayersIds;
20812 Text const Tag;
20813};
20814
20822public :
20823};
20824
20828class CActionInterface : public CNod {
20829public :
20833 Integer const Cooldown;
20837 Integer const CooldownStartTime;
20841 Integer const Energy;
20845 Integer const EnergyCost;
20849 Integer const EnergyMax;
20850};
20851
20860public :
20868 Boolean HoldLoadingScreen;
20869};
20870
20878public :
20882 enum Type {
20883 LayerCustomEvent,
20884 KeyPress,
20885 (reserved),
20886 MenuNavigation,
20887 PlaygroundScriptEvent,
20888 GhostAdded,
20889 RecordUpdated,
20890 RecordsUpdated,
20891 OnPlayerTriggerSpecial,
20892 OnPlayerTriggerWaypoint,
20893 };
20897 enum GameplaySpecialType {
20898 None,
20899 Turbo,
20900 Turbo2,
20901 TurboRoulette,
20902 FreeWheeling,
20903 NoGrip,
20904 NoSteering,
20905 ForceAcceleration,
20906 Reset,
20907 SlowMotion,
20908 Bumper,
20909 Bumper2,
20910 ReactorBoost_Legacy,
20911 Fragile,
20912 ReactorBoost2_Legacy,
20913 Bouncy,
20914 NoBrakes,
20915 Cruise,
20916 ReactorBoost_Oriented,
20917 ReactorBoost2_Oriented,
20918 VehicleTransform_Reset,
20919 VehicleTransform_CarSnow,
20920 VehicleTransform_CarRally,
20921 VehicleTransform_CarDesert,
20922 XXX Null,
20923 };
20927 enum GameplayTurboRoulette {
20928 TurboRoulette_None,
20929 TurboRoulette_1,
20930 TurboRoulette_2,
20931 TurboRoulette_3,
20932 };
20936 CManiaAppPlaygroundEvent::Type const PlaygroundType;
20940 Text const PlaygroundScriptEventType;
20944 Array<Text> PlaygroundScriptEventData;
20948 CGhost * const Ghost;
20952 CManiaAppPlaygroundEvent::GameplaySpecialType const GameplaySpecialType;
20956 CManiaAppPlaygroundEvent::GameplayTurboRoulette const GameplayTurboRoulette;
20960 Boolean const IsBoostUpElseDown;
20964 Integer const WaypointLandmarkIndex;
20968 Integer const RaceWaypointTime;
20972 Integer const DiffWithBestRace;
20976 Boolean const DiffWithBestRace_IsValid;
20980 Integer const LapWaypointTime;
20984 Integer const DiffWithBestLap;
20988 Boolean const DiffWithBestLap_IsValid;
20992 Boolean const IsFinish;
20996 Boolean const IsNewLap;
21000 Integer const RaceWaypointCount;
21004 Integer const LapWaypointCount;
21005};
21006
21010class CHudModule : public CNod {
21011public :
21015 Text ModuleName;
21019 Real PosX;
21023 Real PosY;
21027 Real ZIndex;
21031 Real Scale;
21035 Text const ModulePath;
21036};
21037
21041class CMediaTrackerBlock : public CNod {
21042public :
21046 Real Start;
21050 Real End;
21054 Real GetKeyTime(Integer KeyIndex);
21058 Integer GetKeysCount();
21059};
21060
21065public :
21069 Text const Name;
21074};
21075
21080public :
21084 Text const Checksum;
21088 Integer const CreationTimeStamp;
21092 Text const Id;
21096 Integer const UpdateTimeStamp;
21100 Text const Url;
21101};
21102
21106class CSeasonMapInfo : public CNod {
21107public :
21111 Text const MapId;
21115 Ident const MapUid;
21119 Integer const BronzeScore;
21123 Integer const SilverScore;
21127 Integer const GoldScore;
21131 Integer const AuthorScore;
21135 Integer const TimeStamp;
21136};
21137
21142public :
21146 Text const Level;
21150 Integer const T1Count;
21154 Integer const T2Count;
21158 Integer const T3Count;
21162 Integer const T4Count;
21166 Integer const T5Count;
21170 Integer const T6Count;
21174 Integer const T7Count;
21178 Integer const T8Count;
21182 Integer const T9Count;
21183};
21184
21188class CNewsLink : public CNod {
21189public :
21193 Text const Type;
21197 Text const Param;
21201 Text const ActionName;
21205 Text const ActionDescription;
21206};
21207
21211class CSquadInvitation : public CNod {
21212public :
21216 Text const AccountId;
21220 Text const CountryFlagUrl;
21224 Text const DisplayName;
21228 Boolean const IsFirstPartyDisplayName;
21232 Text const PrestigeSkinOptions;
21236 Array<CSkinInfo*> SkinList;
21237};
21238
21242class CSquadMember : public CNod {
21243public :
21247 Text const AccountId;
21251 Text const CountryFlagUrl;
21255 Text const DisplayName;
21259 Boolean const IsFirstPartyDisplayName;
21263 Text const PrestigeSkinOptions;
21267 Array<CSkinInfo*> SkinList;
21268};
21269
21273class CPackCreatorPack : public CNod {
21274public :
21282 Ident const CreatorId;
21286 Boolean const IsTitlePack;
21290 Void Recipients_Add(Text Login,Integer UseCost,Integer GetCost);
21294 Void Recipients_Remove(Text Login);
21299};
21300
21304class CBlockUnitModel : public CNod {
21305public :
21309 Int3 const RelativeOffset;
21314};
21315
21319class CBlockModelVariant : public CNod {
21320public :
21324 Text Name;
21328 Boolean const IsAllUnderground;
21332 Boolean const IsPartUnderground;
21336 Int3 const Size;
21340 Int3 const OffsetBoundingBoxMin;
21344 Int3 const OffsetBoundingBoxMax;
21348 Array<CBlockUnitModel* const > BlockUnitModels;
21349};
21350
21355public :
21368};
21369
21374public :
21375};
21376
21380namespace MathLib {
21381
21382 const Real Pi = 3.14159;
21383 const Real Tau = 6.28319;
21387 Integer Abs(Integer _Argument1);
21391 Real Abs(Real _Argument1);
21395 Real ToReal(Integer _Argument1);
21411 Real Sin(Real _Argument1);
21415 Real Cos(Real _Argument1);
21419 Real Tan(Real _Argument1);
21423 Real Atan2(Real _Argument1, Real _Argument2);
21427 Real Exp(Real _Argument1);
21431 Real Rand(Real _Argument1, Real _Argument2);
21435 Real Rand(Real _Argument1, Real _Argument2, Integer _Argument3);
21439 Integer Rand(Integer _Argument1, Integer _Argument2);
21443 Integer Rand(Integer _Argument1, Integer _Argument2, Integer _Argument3);
21447 Real NearestReal(Integer _Argument1);
21451 Integer NearestInteger(Real _Argument1);
21455 Integer FloorInteger(Real _Argument1);
21459 Integer TruncInteger(Real _Argument1);
21463 Integer CeilingInteger(Real _Argument1);
21467 Real Distance(Real _Argument1, Real _Argument2);
21473 Real Distance(Vec2 _Argument1, Vec2 _Argument2);
21479 Real Distance(Vec3 _Argument1, Vec3 _Argument2);
21485 Real Length(Vec2 _Argument1);
21491 Real Length(Vec3 _Argument1);
21497 Real Norm0(Vec2 _Argument1);
21503 Real Norm1(Vec2 _Argument1);
21509 Real Norm0(Vec3 _Argument1);
21515 Real Norm1(Vec3 _Argument1);
21521 Integer Norm0(Int2 _Argument1);
21527 Integer Norm1(Int2 _Argument1);
21533 Integer Norm0(Int3 _Argument1);
21539 Integer Norm1(Int3 _Argument1);
21543 Real DotProduct(Vec3 _Argument1, Vec3 _Argument2);
21547 Vec3 CrossProduct(Vec3 _Argument1, Vec3 _Argument2);
21551 Real DotProduct(Vec2 _Argument1, Vec2 _Argument2);
21555 Integer DotProduct(Int3 _Argument1, Int3 _Argument2);
21559 Int3 CrossProduct(Int3 _Argument1, Int3 _Argument2);
21563 Integer DotProduct(Int2 _Argument1, Int2 _Argument2);
21567 Real Angle(Vec3 _Argument1, Vec3 _Argument2);
21571 Real OrientedAngle(Vec3 _Argument1, Vec3 _Argument2);
21577 Real Angle(Real _Radian1, Real _Radian2);
21581 Real Angle(Vec2 _Argument1, Vec2 _Argument2);
21585 Real OrientedAngle(Vec2 _Argument1, Vec2 _Argument2);
21589 Real PI();
21593 Real Asin(Real _Argument1);
21597 Real Acos(Real _Argument1);
21601 Real Pow(Real _Argument1, Real _Argument2);
21605 Real Ln(Real _Argument1);
21609 Real Sqrt(Real _Argument1);
21645 Real Clamp(Real _X, Real _Min, Real _Max);
21651 Real Mod(Real _X, Real _Min, Real _Max);
21669 Vec2 Clamp(Vec2 _X, Vec2 _Min, Vec2 _Max);
21687 Vec3 Clamp(Vec3 _X, Vec3 _Min, Vec3 _Max);
21705 Int2 Clamp(Int2 _X, Int2 _Min, Int2 _Max);
21723 Int3 Clamp(Int3 _X, Int3 _Min, Int3 _Max);
21724};
21725
21729namespace TextLib {
21730
21769 Text SubString(Text _Text, Integer _Start, Integer _Length);
21781 Text SubText(Text _Text, Integer _Start, Integer _Length);
21848 Text TimeToText(Integer _Time, Boolean _IncludeCentiSeconds);
21864 Text TimeToText(Integer _Time, Boolean _IncludeCentiSeconds, Boolean _IncludeMilliSeconds);
21875 Text FormatInteger(Integer _Argument1, Integer _Argument2);
21882 Text FormatInteger(Integer _Value, Integer _MinLength, Boolean _WithSeparator);
21888 Text FormatRank(Integer _Rank, Boolean _ShortFormat);
21898 Text FormatReal(Real _Value, Integer _FPartLength, Boolean _HideZeroes, Boolean _HideDot);
21904 Text ToUpperCase(Text _TextToChange);
21910 Text ToLowerCase(Text _TextToChange);
21926 Boolean CompareWithoutFormat(Text _Text1, Text _Text2, Boolean _IsCaseSensitive);
21939 Boolean Find(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
21947 Boolean EndsWith(Text _TextToFind, Text _TextToSearchIn);
21957 Boolean EndsWith(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
21965 Boolean StartsWith(Text _TextToFind, Text _TextToSearchIn);
21975 Boolean StartsWith(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
21979 Text Compose(Text _Argument1);
21983 Text Compose(Text _Argument1, Text _Argument2);
21987 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3);
21991 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3, Text _Argument4);
21995 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3, Text _Argument4, Text _Argument5);
21999 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3, Text _Argument4, Text _Argument5, Text _Argument6);
22003 Text MLEncode(Text _Argument1);
22007 Text URLEncode(Text _Argument1);
22011 Text StripFormatting(Text _Argument1);
22019 Array<Text> Split(Text _Separators, Text _Text);
22028 Array<Text> Split(Text _Separators, Text _Text, Boolean _MergeSeparators);
22036 Text Join(Text _Separator, Array<Text> _Texts);
22040 Text Trim(Text _Argument1);
22044 Text ReplaceChars(Text _Argument1, Text _Argument2, Text _Argument3);
22053 Text Replace(Text _Text, Text _ToReplace, Text _Replacement);
22062 Array<Text> RegexFind(Text _Pattern, Text _Text, Text _Flags);
22071 Array<Text> RegexMatch(Text _Pattern, Text _Text, Text _Flags);
22081 Text RegexReplace(Text _Pattern, Text _Text, Text _Flags, Text _Replacement);
22090};
22091
22095namespace MapUnits {
22096
22100 CMapEditorPlugin::CardinalDirections GetNextDir(CMapEditorPlugin::CardinalDirections _Argument1);
22104 CMapEditorPlugin::CardinalDirections GetPreviousDir(CMapEditorPlugin::CardinalDirections _Argument1);
22108 CMapEditorPlugin::CardinalDirections GetOpposedDir(CMapEditorPlugin::CardinalDirections _Argument1);
22112 CMapEditorPlugin::CardinalDirections AddDirs(CMapEditorPlugin::CardinalDirections _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22116 CMapEditorPlugin::CardinalDirections SubDirs(CMapEditorPlugin::CardinalDirections _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22120 Int3 GetNeighbourCoord(Int3 _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22124 Int3 GetRotatedOffset(Int3 _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22128 Int3 GetRotatedOffsetPositive(Int3 _Argument1, CMapEditorPlugin::CardinalDirections _Argument2, Int3 _Argument3);
22129};
22130
22134namespace AnimLib {
22135
22147 Real Ease(Text _Function, Real _T, Real _Base, Real _Change, Real _Duration);
22153 Real EaseLinear(Integer _T, Real _Base, Real _Change, Integer _Duration);
22159 Real EaseInQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
22165 Real EaseOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
22171 Real EaseInOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
22177 Real EaseInCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22183 Real EaseOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22189 Real EaseInOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22195 Real EaseInQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
22201 Real EaseOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
22207 Real EaseInOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
22213 Real EaseInQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
22219 Real EaseOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
22225 Real EaseInOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
22231 Real EaseInSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
22237 Real EaseOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
22243 Real EaseInOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
22249 Real EaseInExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
22255 Real EaseOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
22261 Real EaseInOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
22267 Real EaseInCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
22273 Real EaseOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
22279 Real EaseInOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
22285 Real EaseInBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
22291 Real EaseOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
22297 Real EaseInOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
22303 Real EaseInElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22309 Real EaseOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22315 Real EaseInOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22321 Real EaseInElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
22327 Real EaseOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
22333 Real EaseInOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
22339 Real EaseInBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
22345 Real EaseOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
22351 Real EaseInOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
22352};
22353
22357namespace TimeLib {
22358
22362 enum EDateFormats {
22363 Full,
22364 Date,
22365 DateCompact,
22366 DateShort,
22367 Time,
22368 TimeShort,
22369 Relative,
22370 RelativeShort,
22371 MonthYear,
22372 };
22376 enum EDurationFormats {
22377 Full,
22378 Abbreviated,
22379 Chrono,
22380 };
22388 Text FormatDate(Text _Timestamp, EDateFormats _Format);
22397 Text FormatDelta(Text _Timestamp1, Text _Timestamp2, EDurationFormats _Format);
22405 Text FormatDelta(Text _Delta, EDurationFormats _Format);
22413 Integer Compare(Text _Timestamp1, Text _Timestamp2);
22422 Real Clamp01(Text _Boundary1, Text _Boundary2, Text _Timestamp);
22450 Integer GetDelta(Text _Timestamp1, Text _Timestamp2);
22458 Integer GetLocalDelta_Years(Text _Timestamp1, Text _Timestamp2);
22466 Integer GetLocalDelta_Months(Text _Timestamp1, Text _Timestamp2);
22473};
22474
22478namespace ColorLib {
22479
22483 Vec3 HsvToRgb(Vec3 _Hsv);
22487 Vec3 RgbToHsv(Vec3 _Rgb);
22527};
22528
Documentation for class CAccountTrophyGainForHistory_CompetitionMatch.
Definition doc.h:1362
Documentation for class CAccountTrophyGainForHistory_CompetitionRanking.
Definition doc.h:1377
Documentation for class CAccountTrophyGainForHistory_LiveMatch.
Definition doc.h:1392
Documentation for class CAccountTrophyGainForHistory_SoloMedal.
Definition doc.h:1407
Documentation for class CAccountTrophyGainForHistory_SoloRanking.
Definition doc.h:1426
Documentation for class CAccountTrophyGainForHistory.
Definition doc.h:1351
Documentation for class CAccountTrophyGain.
Definition doc.h:8526
Documentation for class CAccountTrophyLastYearSummary.
Definition doc.h:20041
Documentation for class CAction.
Definition doc.h:10269
Documentation for class CActionInterface.
Definition doc.h:20828
Documentation for class CActionManager.
Definition doc.h:17804
Landmark of a map.
Definition doc.h:16513
Documentation for class CAnimManager.
Definition doc.h:5295
API for editor plugins.
Definition doc.h:7201
This is the base Manialink page interface.
Definition doc.h:3481
Documentation for class CAudioManager.
Definition doc.h:4342
Audio device settings.
Definition doc.h:10687
Real VoiceChat_VoiceDetection_Sensitivity
Definition doc.h:10744
Documentation for class CAudioSource.
Definition doc.h:14565
Documentation for class CAudioSourceMusic.
Definition doc.h:14620
Real LPF_Q
Definition doc.h:14686
Real LPF_CutoffRatio
Definition doc.h:14682
Real HPF_CutoffRatio
Definition doc.h:14690
Real HPF_Q
Definition doc.h:14694
An event.
Definition doc.h:13719
Boolean HasBeenProcessed
Definition doc.h:13724
An event.
Definition doc.h:18174
Documentation for class CBlockClip.
Definition doc.h:16785
Documentation for class CBlockClipList.
Definition doc.h:16734
Documentation for class CBlock.
Definition doc.h:16443
The model of a map block.
Definition doc.h:21373
The model of a map block.
Definition doc.h:16630
Documentation for class CBlockModelVariantAir.
Definition doc.h:20796
Documentation for class CBlockModelVariantGround.
Definition doc.h:20789
Documentation for class CBlockModelVariant.
Definition doc.h:21319
A 1-square-sized part of a block instance.
Definition doc.h:20694
A 1-square-sized part of a block model.
Definition doc.h:21304
Documentation for class CCampaign.
Definition doc.h:14963
Documentation for class CChatContext.
Definition doc.h:3323
Documentation for class CChatEntry.
Definition doc.h:3257
Documentation for class CChatEvent_HistoryChange.
Definition doc.h:3243
Documentation for class CChatEvent_NewEntry.
Definition doc.h:3232
Documentation for class CChatEvent.
Definition doc.h:3250
Documentation for class CChatHistory.
Definition doc.h:3296
A currently connected CUser.
Definition doc.h:7360
Boolean const IsConnectedToMasterServer
Definition doc.h:7373
Integer const IdleDuration
Definition doc.h:7389
Documentation for class CCollector.
Definition doc.h:20762
Script API to manage game data.
Definition doc.h:4602
CTaskResult_ReplayList Replay_GetGameList(Text Path, Boolean Flatten)
Void Ghost_Release(Ident GhostId)
CTaskResult_FileList Media_GetGameList(CDataFileMgr::EMediaType Type, Text Path, Boolean Flatten)
CTaskResult_MapList Map_GetGameList(Text Path, Boolean Flatten)
CTaskResult_MapList Map_GetFilteredGameList(Integer Scope, Text Path, Boolean Flatten, Boolean SortByNameElseByDate, Boolean SortOrderAsc)
Void TaskResult_Release(Ident TaskId)
CTaskResult_FileList Media_GetFilteredGameList(CDataFileMgr::EMediaType Type, Integer Scope, Text Path, Boolean Flatten, Boolean SortByNameElseByDate, Boolean SortOrderAsc)
CTaskResult Replay_Save(Text Path, CMap Map, CGhost Ghost)
CTaskResult_FileList Media_GetGameList(CDataFileMgr::EMediaType Type, Text Path, Boolean Flatten, Boolean SortByNameElseByDate, Boolean SortOrderAsc)
CTaskResult_MapList Map_GetGameList(Text Path, Boolean Flatten, Boolean SortByNameElseByDate, Boolean SortOrderAsc)
CCampaign Campaign_Get(Text CampaignId)
Array< CCampaign *const > Campaigns
Definition doc.h:4627
CTaskResult_ReplayList Replay_GetFilteredGameList(Integer Scope, Text Path, Boolean Flatten, Boolean SortByNameElseByDate, Boolean SortOrderAsc)
Integer const UserSave_AvailableSpace
Definition doc.h:4851
Array< CGhost *const > Ghosts
Definition doc.h:4779
Array< CTaskResult *const > TaskResults
Definition doc.h:4619
CTaskResult_ReplayList Replay_GetGameList(Text Path, Boolean Flatten, Boolean SortByNameElseByDate, Boolean SortOrderAsc)
Boolean const UserSave_IsWriting
Definition doc.h:4855
CTaskResult_GhostList Replay_Load(Text Path)
Void Media_RefreshFromDisk(CDataFileMgr::EMediaType Type, Integer Scope)
Documentation for class CEditorAsset.
Definition doc.h:19083
Documentation for class CEditorBase.
Definition doc.h:18960
Documentation for class CEditorEditor.
Definition doc.h:12219
An event.
Definition doc.h:19100
API for editor plugins.
Definition doc.h:454
Documentation for class CEditorMediaTracker.
Definition doc.h:12286
API for the mesh modeler.
Definition doc.h:10913
Documentation for class CEditorModule.
Definition doc.h:10814
Documentation for class CEditorPluginAPI.
Definition doc.h:19144
Documentation for class CEditorPluginHandle.
Definition doc.h:7247
An event.
Definition doc.h:19051
Documentation for class CEditorSkin.
Definition doc.h:12772
Documentation for class CEntity.
Definition doc.h:10058
Ident const MarkerId
Definition doc.h:10063
Documentation for class CFriend.
Definition doc.h:20259
Documentation for class CGameItemModel.
Definition doc.h:16727
API for Maniaplanet client scripts.
Definition doc.h:5580
This is the Manialink browser interface.
Definition doc.h:3620
CMap *const CurMap
Definition doc.h:3625
Documentation for class CGameUserVoiceChat.
Definition doc.h:10627
A ghost model.
Definition doc.h:8444
Ident const Id
Definition doc.h:8449
CTmRaceResultNod *const Result
Definition doc.h:8453
Text Nickname
Definition doc.h:8457
Text Trigram
Definition doc.h:8461
The ghosts manager.
Definition doc.h:10159
Void Ghost_SetDossard(Ident GhostInstanceId, Text Dossard, Vec3 Color)
Void Ghost_SetDossard(Ident GhostInstanceId, Text Dossard)
An HTTP event.
Definition doc.h:14474
CHttpRequest *const Request
Definition doc.h:14489
Manager for HTTP requests.
Definition doc.h:4264
CHttpRequest CreateGet(Text Url)
An HTTP request.
Definition doc.h:14451
Integer const StatusCode
Definition doc.h:14464
Text const Url
Definition doc.h:14456
Text const Result
Definition doc.h:14460
Documentation for class CHudModule.
Definition doc.h:21010
Documentation for class CImage.
Definition doc.h:19090
Documentation for class CInputEvent.
Definition doc.h:14732
Input devices.
Definition doc.h:4450
Integer const TimeSinceLatestActivity
Definition doc.h:4580
game controller.
Definition doc.h:14799
Real const RightStickY
Definition doc.h:14933
Void SetColor(Vec3 Color)
Real const R2
Definition doc.h:14941
Real const RightStickX
Definition doc.h:14929
Void AddRumble(Integer Duration, Real LargeMotor, Real SmallMotor)
Real const LeftStickY
Definition doc.h:14925
Real const L2
Definition doc.h:14937
Real const LeftStickX
Definition doc.h:14921
Documentation for class CItemAnchor.
Definition doc.h:16495
Documentation for class CMacroblockInstance.
Definition doc.h:16396
Documentation for class CMacroblockModel.
Definition doc.h:16688
API for Maniaplanet client scripts.
Definition doc.h:19301
API for Maniaplanet client scripts.
Definition doc.h:13503
An event.
Definition doc.h:15996
API for Maniaplanet client scripts.
Definition doc.h:288
Boolean OpenFileInExplorer(Text FileName)
API for game interface client scripts.
Definition doc.h:18488
CUIConfig * ClientUI
Definition doc.h:18513
CUIConfig * UI
Definition doc.h:18509
Void SplitScreenAssignLayer(CUILayer UILayer, Integer ScreenNum)
GameMode ManaiApp event.
Definition doc.h:20877
This is the client ManiaApp for game modes.
Definition doc.h:20859
Void SendCustomEvent(Text Type, Array< Text > Data)
Station mania app.
Definition doc.h:13390
Void Maker_EditNewTitle(Text EditedTitleName)
API for a Title main menu.
Definition doc.h:5591
Void ExternalRequest_Clear()
Real FillExtraSpaceWithBluredContents_Opacity
Definition doc.h:5636
CTitleEdition *const TitleEdition
Definition doc.h:5644
This is the title menus Manialink interface.
Definition doc.h:3516
CManiaAppTitle *const ParentApp
Definition doc.h:3521
Documentation for class CMapBotPath.
Definition doc.h:10020
Documentation for class CMapBotSpawn.
Definition doc.h:10043
Documentation for class CMapEditorCamera.
Definition doc.h:16816
Documentation for class CMapEditorConnectResults.
Definition doc.h:17132
Documentation for class CMapEditorCursor.
Definition doc.h:17021
Documentation for class CMapEditorInventoryArticle.
Definition doc.h:20755
Documentation for class CMapEditorInventoryDirectory.
Definition doc.h:20713
Documentation for class CMapEditorInventory.
Definition doc.h:16559
Documentation for class CMapEditorInventoryNode.
Definition doc.h:20732
An event.
Definition doc.h:16293
API for the plugins of the map editor.
Definition doc.h:5710
Real BleacherSpectatorsFillRatio
Definition doc.h:6941
Integer BleacherSpectatorsCount
Definition doc.h:6945
This is the base Manialink page interface.
Definition doc.h:3535
Documentation for class CMapGroup.
Definition doc.h:19515
Documentation for class CMap.
Definition doc.h:13539
Documentation for class CMapInfo.
Definition doc.h:7254
Documentation for class CMapLandmark.
Definition doc.h:17252
Ident const MarkerId
Definition doc.h:17257
Documentation for class CMapObjectAnchor.
Definition doc.h:18255
Documentation for class CMapRecord.
Definition doc.h:19875
Documentation for class CMapSector.
Definition doc.h:20803
Documentation for class CMapSpawn.
Definition doc.h:9929
API for the plugins of the map editor.
Definition doc.h:10210
Documentation for class CMapWaypoint.
Definition doc.h:10069
Masterserver user info.
Definition doc.h:15734
Text const Login
Definition doc.h:15764
Text const DisplayName
Definition doc.h:15768
Integer const ZoneLevelCount
Definition doc.h:15743
Text GetZone(Integer ZoneLevel)
CMasterServerUser::EMasterServerConnectionStatus const ConnectionStatus
Definition doc.h:15772
Represents a match-settings file.
Definition doc.h:19238
Text const Name
Definition doc.h:19243
Allows handling of match-settings files.
Definition doc.h:16194
Void MatchSettings_RefreshFiles()
CMatchSettings MatchSettings_CreateTemp()
Void MatchSettings_Save(CMatchSettings MatchSettings)
Void MatchSettings_Remove(CMatchSettings MatchSettings)
CMatchSettings MatchSettings_SaveAs(Text FilePath, CMatchSettings MatchSettings)
CMatchSettings MatchSettings_CreateFile(Text FilePath)
Array< CMatchSettings *const > MatchSettings
Definition doc.h:16239
Represents a map in the playlist of a matchsetting.
Definition doc.h:21064
Text const Name
Definition doc.h:21069
Boolean const FileExists
Definition doc.h:21073
Documentation for class CMediaTrackerBlock.
Definition doc.h:21041
Documentation for class CMediaTrackerClipGroup.
Definition doc.h:19212
Documentation for class CMediaTrackerClip.
Definition doc.h:19185
Documentation for class CMediaTrackerTrack.
Definition doc.h:19223
Create scenes for use in menus with <Camera> manialink element.
Definition doc.h:5357
Ident ItemCreate(Ident SceneId, Text ModelName, Text SkinName, Text SkinUrl, Text SkinOptions)
Ident ItemCreate(Ident SceneId, Text ModelName, Text SkinName, Text SkinUrl)
Ident SceneCreate(Text LayoutFileName)
Void PodiumTweakShadingSet(Ident SceneId, Real BaseColor, Real CubeReflect, Real PlaneReflect)
Void MoodLightDir0Set(Ident SceneId, Integer iMood, Vec3 sRGB, Real Intensity, Real AltitudeDeg, Real AzimutDeg)
This is the Manialink browser interface.
Definition doc.h:3573
CManiaAppBrowser *const ParentApp
Definition doc.h:3578
Manialink control.
Definition doc.h:13993
Manialink control.
Definition doc.h:13733
Manialink control.
Definition doc.h:4047
Manialink entry.
Definition doc.h:14070
Manialink filename entry.
Definition doc.h:19441
Documentation for class CMlFrame.
Definition doc.h:13649
Manialink control.
Definition doc.h:13943
Real Ratio
Definition doc.h:13960
Real GradingRatio
Definition doc.h:13964
Documentation for class CMlGraphCurve.
Definition doc.h:19411
Real Width
Definition doc.h:19432
Manialink control.
Definition doc.h:13913
Manialink entry.
Definition doc.h:14152
Text TextPrefix
Definition doc.h:14220
Manialink control.
Definition doc.h:13871
Manialink control.
Definition doc.h:14273
Real ZoomFactor
Definition doc.h:14290
Documentation for class CMlPage.
Definition doc.h:3639
Documentation for class CMlQuad.
Definition doc.h:14315
Documentation for class CMlScript_ReadOnly.
Definition doc.h:18531
Events for Manialink page scripts.
Definition doc.h:3964
This is the base Manialink page interface.
Definition doc.h:74
Void SendCustomEvent(Text Type, Array< Text > Data)
CUser *const LocalUser
Definition doc.h:114
Documentation for class CMlScriptIngame_ReadOnly.
Definition doc.h:10552
CPlaygroundClient const *const Playground
Definition doc.h:10561
Boolean IsSpectator
Definition doc.h:10565
Boolean IsSpectatorClient
Definition doc.h:10569
API for GameModes Manialinks.
Definition doc.h:10373
Void RequestSpectatorClient(Boolean Spectator)
Void SetSpectateTarget(Text Player)
Boolean IsSpectator
Definition doc.h:10438
CUIConfig const *const UI
Definition doc.h:10430
CManiaAppPlaygroundCommon *const ParentApp
Definition doc.h:10454
Boolean IsSpectatorClient
Definition doc.h:10442
CUIConfig *const ClientUI
Definition doc.h:10434
Manialink control.
Definition doc.h:13849
This is the stations Manialink interface.
Definition doc.h:3550
CManiaAppStation *const ParentApp
Definition doc.h:3555
Manialink entry.
Definition doc.h:14007
Manialink control.
Definition doc.h:13747
Rules API for gamemodes.
Definition doc.h:8600
CDataFileMgr *const DataFileMgr
Definition doc.h:8844
Ident ItemList_AddWithSkin(Text ModelName, Text SkinNameOrUrl)
CInputManager *const Input
Definition doc.h:8840
Documentation for class CModeTurret.
Definition doc.h:9939
Documentation for class CModeTurretManager.
Definition doc.h:17661
Documentation for class CModeVehicle.
Definition doc.h:9961
Documentation for class CModeVehicleManager.
Definition doc.h:17736
Documentation for class CModuleMenuComponent.
Definition doc.h:10750
Documentation for class CModuleMenuFileBrowser.
Definition doc.h:18630
Documentation for class CModuleMenu.
Definition doc.h:15970
This is the title menus Manialink interface.
Definition doc.h:13122
Documentation for class CModuleMenuModel.
Definition doc.h:18967
Documentation for class CModuleMenuPage.
Definition doc.h:10796
Documentation for class CModuleMenuPageModel.
Definition doc.h:18990
Documentation for class CModulePlaygroundChrono.
Definition doc.h:18759
Documentation for class CModulePlayground.
Definition doc.h:10769
Documentation for class CModulePlaygroundHud.
Definition doc.h:17596
Documentation for class CModulePlaygroundHudModel.
Definition doc.h:19001
Documentation for class CModulePlaygroundInventory.
Definition doc.h:18875
Documentation for class CModulePlaygroundPlayerState.
Definition doc.h:18689
Documentation for class CModulePlaygroundScoresTable.
Definition doc.h:18782
Documentation for class CModulePlaygroundSpeedMeter.
Definition doc.h:18700
An playground Store module.
Definition doc.h:18910
Documentation for class CModulePlaygroundTeamState.
Definition doc.h:18678
Documentation for class CNadeoServicesItemCollection.
Definition doc.h:19536
Documentation for class CNadeoServicesItemCollectionVersion.
Definition doc.h:21079
Documentation for class CNadeoServicesMap.
Definition doc.h:19627
Documentation for class CNadeoServicesSkin.
Definition doc.h:19746
Documentation for class CNews.
Definition doc.h:20308
Documentation for class CNod.
Definition doc.h:3466
Documentation for class CNotification_PrestigeEarned.
Definition doc.h:741
Documentation for class CNotification_Prestige.
Definition doc.h:8493
Documentation for class CNotification_SquadDeleted.
Definition doc.h:804
Documentation for class CNotification_Squad.
Definition doc.h:8500
Documentation for class CNotification_SquadInvitationAccepted.
Definition doc.h:823
Documentation for class CNotification_SquadInvitationAdded.
Definition doc.h:874
Documentation for class CNotification_SquadInvitationCanceledForExitingPlayer.
Definition doc.h:992
Documentation for class CNotification_SquadInvitationCanceledForFullSquad.
Definition doc.h:1031
Documentation for class CNotification_SquadInvitationCanceled.
Definition doc.h:933
Documentation for class CNotification_SquadInvitationDeclined.
Definition doc.h:1070
Documentation for class CNotification_SquadInvitationReceived.
Definition doc.h:1109
Documentation for class CNotification_SquadLockStateUpdated.
Definition doc.h:1148
Documentation for class CNotification_SquadMemberAdded.
Definition doc.h:1171
Documentation for class CNotification_SquadMemberKicked.
Definition doc.h:1222
Documentation for class CNotification_SquadMemberRemoved.
Definition doc.h:1281
Documentation for class CNotification_SquadUpdated.
Definition doc.h:1320
Documentation for class CNotification.
Definition doc.h:17585
An event.
Definition doc.h:20625
CNotificationsConsumerEvent::EType const Type
Definition doc.h:20637
CNotificationsConsumerNotification *const Notification
Definition doc.h:20641
Manager of buddies instant messaging.
Definition doc.h:16163
Array< CNotificationsConsumerEvent *const > Events
Definition doc.h:16176
Array< CNotificationsConsumerNotification *const > Notifications
Definition doc.h:16180
A Notification.
Definition doc.h:20647
Script API to create Packs (can be Titlepacks or plain ManiaCredited data), and generate new builds o...
Definition doc.h:20570
Void RegisterPackForEditedTitle()
Ident Build_Begin(CPackCreatorPack Pack, CPackCreatorTitleInfo TitleInfo)
A pack.
Definition doc.h:21273
Ident const PackId
Definition doc.h:21278
A recipient included in the bill for a Pack.
Definition doc.h:21354
Integer const UseCost
Definition doc.h:21367
Text const Login
Definition doc.h:21359
Integer const GetCost
Definition doc.h:21363
Script API to create Pack files (can be Titlepack or plain ManiaCredited data).
Definition doc.h:19312
Text Station_ManialinkUrl
Definition doc.h:19369
Boolean const Solo_HasCampaign
Definition doc.h:19385
Documentation for class CParsingDocument.
Definition doc.h:14425
Tool for parsing document.
Definition doc.h:4169
CParsingDocument Parse_Xml(Text Contents)
CParsingDocument Parse_Xml(Text Contents, Boolean GenerateText, Boolean GenerateTextRaw, Boolean GenerateTextResursive)
Documentation for class CParsingNode.
Definition doc.h:19468
A player is the incarnation of the user in the playground.
Definition doc.h:8006
Integer LandmarkOrderSelector_Race
Definition doc.h:8023
API for plugins to get playground info.
Definition doc.h:18274
Boolean SaveReplay(Text FileName)
Void RequestChangeModeScriptSettings(Text SettingsXml)
Boolean SaveMap(Text FileName)
Void RequestSpectatorClient(Boolean Spectator)
CMap *const Map
Definition doc.h:18309
Boolean const IsSpectator
Definition doc.h:18337
Boolean const IsSpectatorClient
Definition doc.h:18341
Documentation for class CPrestige.
Definition doc.h:20432
Documentation for class CRankingsZoneMgr.
Definition doc.h:4976
Documentation for class CReplayInfo.
Definition doc.h:19815
Documentation for class CScore.
Definition doc.h:8034
Score and leaderboard manager.
Definition doc.h:4861
CTaskResult_AccountTrophyLastYearSummary Trophy_GetLastYearSummary(Ident UserId)
CTaskResult Map_LoadPBScoreList(Ident UserId, Array< Text > MapUidList, Text GameMode, Text GameModeCustomData)
CTaskResult_AccountTrophyGainHistory Trophy_GetGainHistoryByType(Ident UserId, Integer TrophyType, Integer Offset, Integer Count)
CTaskResult Season_LoadScoreList(Ident UserId, Array< Text > SeasonIdList)
Array< CTaskResult *const > TaskResults
Definition doc.h:4866
CTaskResult_Ghost Map_GetRecordGhost_v2(Ident UserId, Text MapUid, Text ScopeType, Text ScopeId, Text GameMode, Text GameModeCustomData)
CTaskResult_Season Season_Get(Ident UserId, Text SeasonId)
CTaskResult_TrophySoloMedalAchievementSettings Trophy_GetSoloMedalAchievementSettings(Ident UserId, Text SoloMedalAchievementType)
CTaskResult_SeasonList Season_GetListFromUser(Ident UserId, Text WebServicesUserId)
Integer Map_GetRecord_v2(Ident UserId, Text MapUid, Text ScopeType, Text ScopeId, Text GameMode, Text GameModeCustomData)
Void Score_GetFromCompressedPlatformScore(Integer CompressedScore, Integer RespawnCount, Integer Time)
CTaskResult Map_SetNewRecord_v2(Ident UserId, Text MapUid, Text GameMode, Text GameModeCustomData, CGhost Ghost)
CTaskResult_SeasonList Season_GetList(Ident UserId, Array< Text > SeasonIdList)
Integer Map_GetMedal(Ident UserId, Text MapUid, Text ScopeType, Text ScopeId, Text GameMode, Text GameModeCustomData)
Void Map_GetRecordFullScore(Ident UserId, Text MapUid, Text ScopeType, Text ScopeId, Text GameMode, Text GameModeCustomData, Integer Time, Integer Points, Integer RespawnCount)
CGhost Playground_GetPlayerGhost(CPlayer GamePlayer)
CTaskResult_Ghost Map_GetMultiAsyncLevelRecordGhost_v2(Text MapUid, Text ScopeType, Text ScopeId, Text GameMode, Text GameModeCustomData, Integer MultiAsyncLevel)
CTaskResult_AccountTrophyLastYearSummary Trophy_GetLastYearSummaryForUser(Ident UserId, Text WebServicesUserId)
CTaskResult Season_LoadScore(Ident UserId, Text SeasonId)
CTaskResult_Season Season_Create(Ident UserId, Text SeasonName, Text GameMode, Text GameModeCustomData, Text MapRecordType, Integer StartTimeStamp, Integer EndTimeStamp, Array< Text > MapUidList)
Void TaskResult_Release(Ident TaskId)
CTaskResult_AccountTrophyGainHistory Trophy_GetGainHistory(Ident UserId, Integer Offset, Integer Count)
Integer Map_GetMultiAsyncLevelRecord_v2(Text MapUid, Text ScopeType, Text ScopeId, Text GameMode, Text GameModeCustomData, Integer MultiAsyncLevel)
Documentation for class CSeason.
Definition doc.h:19960
Documentation for class CSeasonMapInfo.
Definition doc.h:21106
API for server control when playing online.
Definition doc.h:8261
Boolean IsDisableChangeTeams
Definition doc.h:8316
Boolean ForcePlayerRequestedTeam(CClient Client, Integer Team)
CServerInfo *const ServerInfo
Definition doc.h:8276
Void Authentication_GetToken(Ident UserId, Text AppLogin)
Text ConnectFakePlayer()
Documentation for class CServerInfo.
Definition doc.h:17379
ServerPlugin Event.
Definition doc.h:8124
CServerPluginEvent::EType const Type
Definition doc.h:8156
Server plugin.
Definition doc.h:526
Array< CScore *const > Scores
Definition doc.h:571
Array< CClient *const > Players
Definition doc.h:563
Array< CClient *const > Spectators
Definition doc.h:559
Array< CClient *const > Clients
Definition doc.h:555
Boolean Client_ComputeMinimap
Definition doc.h:683
Documentation for class CSkinInfo.
Definition doc.h:8507
An action event.
Definition doc.h:10279
CSmActionEvent::EType const Type
Definition doc.h:10319
An action.
Definition doc.h:2516
Boolean const IsInitialFrame
Definition doc.h:2557
Documentation for class CSmMapBase.
Definition doc.h:9819
Documentation for class CSmMapGate.
Definition doc.h:18189
Documentation for class CSmMapGauge.
Definition doc.h:18224
Real ValueReal
Definition doc.h:18233
Documentation for class CSmMapLandmark.
Definition doc.h:9842
API for the plugins of the map editor.
Definition doc.h:2486
Ingame Manialink API for ShootMania.
Definition doc.h:2819
CSmPlayer *const InputPlayer
Definition doc.h:2828
CSmPlayer *const GUIPlayer
Definition doc.h:2832
Event recieved by ShootMania gamemodes.
Definition doc.h:9545
CSmModeEvent::EType const Type
Definition doc.h:9613
Rules API for ShootMania gamemodes.
Definition doc.h:1564
Void SetPlayer_Delayed_NoEngine(CSmPlayer Player, Boolean Activate)
CGhostManager *const GhostMgr
Definition doc.h:2436
Void SetPlayer_Delayed_Boost2Up(CSmPlayer Player, Boolean Activate)
Void SetPlayer_Delayed_ForceEngine(CSmPlayer Player, Boolean Activate)
Void SetPlayer_Delayed_Reset(CSmPlayer Player)
Void SetPlayer_Delayed_BoostDown(CSmPlayer Player, Boolean Activate)
Integer LapCountOverride
Definition doc.h:1712
Void SetPlayer_Delayed_Cruise(CSmPlayer Player, Boolean Activate, Real CruiseSpeedValue)
Void SetPlayer_Delayed_Fragile(CSmPlayer Player, Boolean Activate)
Boolean ForceNavMapsComputation
Definition doc.h:2284
Void SetPlayer_Delayed_ControlCoef(CSmPlayer Player, Real ControlCoef)
Void SetPlayer_Delayed_BoostUp(CSmPlayer Player, Boolean Activate)
Void SetPlayer_Delayed_VehicleTransform(CSmPlayer Player, CSmMode::EVehicleTransformType VehicleTransformType)
Boolean CrudeExtrapolation_AllowDelay
Definition doc.h:2288
Void SetPlayer_Delayed_GravityCoef(CSmPlayer Player, Real GravityCoef)
Void SetPlayer_Delayed_TireWear(CSmPlayer Player, Real TireWear)
Void SetPlayer_Delayed_Boost2Down(CSmPlayer Player, Boolean Activate)
Void SetPlayer_Delayed_SlowMotion(CSmPlayer Player, Boolean Activate)
Boolean DisableDefaultSkinPreload
Definition doc.h:1804
Void SetPlayer_Delayed_NoSteer(CSmPlayer Player, Boolean Activate)
Void SetPlayer_Delayed_AccelCoef(CSmPlayer Player, Real AccelCoef)
Void Ghost_CopyToScoreBestRaceAndLap(CGhost Ghost, CSmScore Score)
Void SetPlayer_Delayed_AdherenceCoef(CSmPlayer Player, Real AdherenceCoef)
Void SetPlayer_Delayed_NoBrakes(CSmPlayer Player, Boolean Activate)
Void SetNbBotPlayers(Integer NbClan1, Integer NbClan2)
An instance of an object.
Definition doc.h:10087
CSmPlayer *const Player
Definition doc.h:10129
API for ShootMania bots.
Definition doc.h:17868
Real TargetWorldRadius
Definition doc.h:18127
Void Scripted_RequestGunTrigger()
Real FlockRadius
Definition doc.h:18145
Vec3 Orbit_AnchorPoint
Definition doc.h:18067
Vec3 Escape_AnchorPoint
Definition doc.h:18035
Array< CSmPlayerDriver * > FlockPartners
Definition doc.h:18140
Real TargetWorldPriority
Definition doc.h:18131
Integer LostTargetChaseDuration
Definition doc.h:18135
CSmPlayerDriver::ESmDriverPathState const PathState
Definition doc.h:17983
Real TargetDetectionFov
Definition doc.h:17967
Void Scripted_RequestAction()
Real FlockAlignmentWeight
Definition doc.h:18160
Real FlockFov
Definition doc.h:18150
Real FlockCohesionWeight
Definition doc.h:18155
Real FlockSeparationWeight
Definition doc.h:18165
Vec3 Saunter_AnchorPoint
Definition doc.h:18051
A Shootmania player.
Definition doc.h:9091
Array< Integer > LapWaypointTimes
Definition doc.h:9124
Real AdherenceCoef
Definition doc.h:9452
Real const GetLinearHue
Definition doc.h:9256
Real AccelCoef
Definition doc.h:9440
Real EnergyLevel
Definition doc.h:9232
Boolean UseCrudeExtrapolation
Definition doc.h:9428
Text Dossard
Definition doc.h:9240
CStuntStatus *const Stunt
Definition doc.h:9516
Real StaminaGain
Definition doc.h:9196
Real SpeedPower
Definition doc.h:9204
Real AmmoGain
Definition doc.h:9156
Real ControlCoef
Definition doc.h:9444
Real GravityCoef
Definition doc.h:9448
Real ArmorPower
Definition doc.h:9180
Real StaminaMax
Definition doc.h:9192
Real StaminaPower
Definition doc.h:9200
Real JumpPower
Definition doc.h:9208
Real ThrowSpeed
Definition doc.h:9280
Scoring info for ShootMania players.
Definition doc.h:9866
Documentation for class CSquad.
Definition doc.h:20509
Documentation for class CSquadInvitation.
Definition doc.h:21211
Documentation for class CSquadMember.
Definition doc.h:21242
Station info & manipulation.
Definition doc.h:13417
Boolean const IsEditable
Definition doc.h:13493
Documentation for class CStuntFigure.
Definition doc.h:3342
Integer Combo
Definition doc.h:3373
Integer Angle
Definition doc.h:3377
Integer Points
Definition doc.h:3381
Documentation for class CStuntStatus.
Definition doc.h:3419
Integer ChainDelay
Definition doc.h:3452
Integer ChainCounter
Definition doc.h:3448
API for platform calls.
Definition doc.h:5474
Boolean const IsWritingUserSave
Definition doc.h:5547
Integer const CurrentLocalDate
Definition doc.h:5515
Task result containing a part of the history of account trophy gain.
Definition doc.h:15233
Array< CAccountTrophyGainForHistory *const > AccountTrophyGainList
Definition doc.h:15238
Task result containing a list of account trophy gain.
Definition doc.h:17650
Array< CAccountTrophyGain *const > AccountTrophyGainList
Definition doc.h:17655
Task result containing a last year summary of account trophy.
Definition doc.h:15251
CAccountTrophyLastYearSummary *const Summary
Definition doc.h:15256
Asynchronous task result.
Definition doc.h:15803
Results of task requesting the club tag of users.
Definition doc.h:15941
Text GetClubTag(Text WebServicesUserId)
Asynchronous task result.
Definition doc.h:15793
Results containing a list of media info.
Definition doc.h:15151
Array< Text > Files
Definition doc.h:15164
Text const ParentPath
Definition doc.h:15156
Array< Text > SubFolders
Definition doc.h:15168
Text const Path
Definition doc.h:15160
Task result containing a list of friend info.
Definition doc.h:15817
Array< CFriend *const > FriendList
Definition doc.h:15822
Results containing a list of GameMode info.
Definition doc.h:15177
Array< CTaskResult_ModeInfo *const > GameModes
Definition doc.h:15182
Documentation for class CTaskResult_GhostDriver_UploadLimit.
Definition doc.h:2961
Documentation for class CTaskResult_GhostDriverDownload_Ghost.
Definition doc.h:3002
Documentation for class CTaskResult_GhostDriverDownload_Member.
Definition doc.h:2991
Documentation for class CTaskResult_GhostDriverDownload_Team.
Definition doc.h:2976
Task result containing a ghost.
Definition doc.h:8482
CGhost *const Ghost
Definition doc.h:8487
Results containing a list of ghost.
Definition doc.h:15137
Array< CGhost *const > Ghosts
Definition doc.h:15142
Results containing a list of map info.
Definition doc.h:15029
Text const ParentPath
Definition doc.h:15034
Array< CMapInfo *const > MapInfos
Definition doc.h:15042
Text const Path
Definition doc.h:15038
Array< Text > SubFolders
Definition doc.h:15046
Task result containing a list of map record info from NadeoServices.
Definition doc.h:15191
Array< CMapRecord *const > MapRecordList
Definition doc.h:15196
A GameMode script.
Definition doc.h:19838
Text const Name
Definition doc.h:19843
Task result containing a ItemCollection info from NadeoServices.
Definition doc.h:15001
CNadeoServicesItemCollection *const ItemCollection
Definition doc.h:15006
Task result containing a list of ItemCollection info from NadeoServices.
Definition doc.h:15015
Array< CNadeoServicesItemCollection *const > ItemCollectionList
Definition doc.h:15020
Task result containing a map info from NadeoServices.
Definition doc.h:15055
CNadeoServicesMap *const Map
Definition doc.h:15060
Task result containing a list of map info from NadeoServices.
Definition doc.h:15069
Array< CNadeoServicesMap *const > MapList
Definition doc.h:15074
Task result containing a Skin info from NadeoServices.
Definition doc.h:15083
CNadeoServicesSkin *const Skin
Definition doc.h:15088
Task result containing a list of Skin info from NadeoServices.
Definition doc.h:15097
Array< CNadeoServicesSkin *const > SkinList
Definition doc.h:15102
Asynchronous task result.
Definition doc.h:15899
Results containing a list of replay info.
Definition doc.h:15111
Array< Text > SubFolders
Definition doc.h:15128
Text const Path
Definition doc.h:15120
Text const ParentPath
Definition doc.h:15116
Array< CReplayInfo *const > ReplayInfos
Definition doc.h:15124
Task result containing a season.
Definition doc.h:15205
CSeason *const Season
Definition doc.h:15210
Task result containing a list of season.
Definition doc.h:15219
Array< CSeason *const > SeasonList
Definition doc.h:15224
Asynchronous task result.
Definition doc.h:15831
Task result containing a Squad.
Definition doc.h:15913
CSquad *const Squad
Definition doc.h:15918
Asynchronous task result.
Definition doc.h:15927
Asynchronous task result.
Definition doc.h:15723
Task result containing the settings of a solo medal trophy achievement.
Definition doc.h:15265
CTrophySoloMedalAchievementSettings *const Settings
Definition doc.h:15270
Asynchronous task result.
Definition doc.h:15853
Asynchronous task result.
Definition doc.h:15881
Asynchronous task result.
Definition doc.h:15867
Results of task requesting the zone of user.
Definition doc.h:15297
CZone GetUserZone(Text WebServicesUserId)
Task result containing a Notification.
Definition doc.h:15955
CNotification *const Notification
Definition doc.h:15960
Results containing a list of zones.
Definition doc.h:15279
CZone GetZone(Text ZoneId)
Array< CZone *const > ZoneList
Definition doc.h:15284
Asynchronous task result.
Definition doc.h:8405
Text const ErrorCode
Definition doc.h:8430
Boolean const IsCanceled
Definition doc.h:8422
Boolean const IsProcessing
Definition doc.h:8410
Text const ErrorType
Definition doc.h:8426
Boolean const HasFailed
Definition doc.h:8418
Text const ErrorDescription
Definition doc.h:8434
Boolean const HasSucceeded
Definition doc.h:8414
Documentation for class CTeam.
Definition doc.h:8070
API for titles menus to control the main loop.
Definition doc.h:13137
Boolean const IsReady
Definition doc.h:13184
Void GetServerInfo(Text ServerLogin)
Void PublishFile(Text FileName)
Void JoinServer(Text ServerLogin, Boolean AsSpectator, Text Password)
CTitleControl::EResult const LatestResult
Definition doc.h:13188
API for titles in edition mode.
Definition doc.h:16072
Void SetTitleCampaign(Integer CampaignNum, Text ScoreContext, Text MapsFolderNameOrPlayListName, Boolean OfficialRecordEnabled)
CPackCreator *const PackCreator
Definition doc.h:16089
Void File_Move(Text OrigName, Text DestNameOrFolder, Boolean KeepOriginalCopy)
Void File_ImportFromUser(Text FileName)
Documentation for class CTitle.
Definition doc.h:3914
Description of a race run.
Definition doc.h:17540
User privileges manager.
Definition doc.h:7038
Void Track_News_PlayerAction(Ident UserId, Text NewsId, Text Placement, Text Action)
Void Track_Live_MultiplayerPlayed(Ident UserId, Integer Rank, Boolean Win)
Void Track_Context_MenuStart(Ident UserId, Text MenuName)
Array< CTaskResult *const > TaskResults
Definition doc.h:7083
Void Track_Context_MapStop(Ident UserId, Text MapUid)
Void Track_Player_MedalEarned(Ident UserId, Integer Finished, Integer BronzeMedal, Integer SilverMedal, Integer GoldMedal, Integer AuthorMedal, Boolean IsOfficialCampaign, Boolean IsTOTD)
Void Track_Live_RoyalPlayed_V2(Ident UserId, Integer Rank, Boolean Win, Boolean IsSuperRoyal, Text Division)
Void Track_Player_TrophyEarned(Ident UserId, Integer T1CountPtr, Integer T2CountPtr, Integer T3CountPtr, Integer T4CountPtr, Integer T5CountPtr, Integer T6CountPtr, Integer T7CountPtr, Integer T8CountPtr, Integer T9CountPtr)
Void Track_Context_MenuStop(Ident UserId, Text MenuName)
Void Track_Local_HotseatPlayed_V2(Ident UserId)
Void Track_Player_EndActivity(Ident UserId, Text ActivityId)
Void TaskResult_Release(Ident TaskId)
Void Track_Player_TrackOfTheDayWeekAllTrackCompleted_V2(Ident UserId, Integer Year, Integer Week, CTrackingMgr::EEventMedalLevel MedalLevel)
Void Track_Context_MapStart(Ident UserId, Text MapUid, Text Environment)
Void Track_Live_RankedPlayed(Ident UserId, Integer Rank, Boolean Win)
Void Track_Context_GameModeStop(Ident UserId, Text GameMode)
Void Track_Player_OfficialCampaign10TrackCompleted(Ident UserId, Integer Year, CTrackingMgr::EEventSeason Season, CTrackingMgr::EEventMedalLevel MedalLevel)
Void Track_Context_PlayStart(Ident UserId, Text Type)
Void Track_Player_OfficialCampaignAllTrackCompleted_V2(Ident UserId, Integer Year, CTrackingMgr::EEventSeason Season, CTrackingMgr::EEventMedalLevel MedalLevel)
Void Track_Create_NewMapCreated(Ident UserId, Text Environment, Boolean IsRandomlyGenerated)
Void Track_Context_PlayTime(Ident UserId, CTrackingMgr::EPlayTimeContext PlayTimeContext)
Void Track_Context_PlayStop(Ident UserId, Text Type, Text Reason, Integer NbRespawns)
Void Track_Live_RoyalSectionFinished_V2(Ident UserId, CTrackingMgr::EEventColorLevel ColorLevel)
Void Track_Local_SplitScreenPlayed_V2(Ident UserId)
Void Track_Player_StartActivity(Ident UserId, Text ActivityId)
Void Track_Context_GameModeStart(Ident UserId, Text GameMode)
Void Track_News_PlayerImpression(Ident UserId, Text NewsId, Text Placement, Integer Duration)
Void Track_Live_COTDPlayed(Ident UserId, Integer Rank, Boolean Win)
Documentation for class CTrophyAchievement_CompetitionMatch.
Definition doc.h:1441
Documentation for class CTrophyAchievement_CompetitionRanking.
Definition doc.h:1476
Documentation for class CTrophyAchievement_LiveMatch.
Definition doc.h:1503
Documentation for class CTrophyAchievement_SoloMedal.
Definition doc.h:1530
Documentation for class CTrophyAchievement_SoloRanking.
Definition doc.h:1541
Documentation for class CTrophyAchievement.
Definition doc.h:8581
Documentation for class CTrophySoloMedalAchievementLevelSettings.
Definition doc.h:21141
Documentation for class CTrophySoloMedalAchievementSettings.
Definition doc.h:20106
UIConfig Event.
Definition doc.h:17302
This object handles the interface.
Definition doc.h:7400
Integer AlliesLabelsMaxCount
Definition doc.h:7847
Void Spectator_SetForcedTarget_Ghost(Ident GhostInstanceId)
Real OverlayChatWidthCoef
Definition doc.h:7687
Integer OverlayChatLineCount
Definition doc.h:7679
CUIConfig::EObserverMode SpectatorObserverMode
Definition doc.h:7899
Text MarkersXML
Definition doc.h:7618
Boolean OverrideMarkers
Definition doc.h:7623
Documentation for class CUIConfigMarker.
Definition doc.h:17151
Boolean HideOnSelf
Definition doc.h:17238
Real DistMax
Definition doc.h:17225
Documentation for class CUIConfigMgr.
Definition doc.h:8198
Documentation for class CUILayer.
Definition doc.h:6959
User profile.
Definition doc.h:3679
Documentation for class CUserPrestige.
Definition doc.h:20373
API for local users/profiles.
Definition doc.h:5011
CTaskResult_StringIntList GetGroups(Ident UserId)
Array< CGameUserVoiceChat *const > VoiceChat_Users_Speaking
Definition doc.h:5257
Local profile settings.
Definition doc.h:15312
Real Interface_BeaconOpacity
Definition doc.h:15594
Real Inputs_MouseScaleFreeLook
Definition doc.h:15658
Real Inputs_MouseScaleY
Definition doc.h:15654
Real Interface_CrosshairSize
Definition doc.h:15558
Real Interface_BeaconDuration
Definition doc.h:15602
Real Interface_CrosshairOpacity
Definition doc.h:15562
Real Interface_PlayerShieldScale
Definition doc.h:15570
Real User_LightTrailHue
Definition doc.h:15442
Real Inputs_MouseSensitivityDefault
Definition doc.h:15666
Real Interface_OppoLinearHue
Definition doc.h:15586
Real Interface_CrosshairSaturation
Definition doc.h:15550
Real User_HornPitch
Definition doc.h:15446
Real Interface_AllyLinearHue
Definition doc.h:15578
Boolean const CanChangeAvatar
Definition doc.h:15406
Real Interface_BeaconSize
Definition doc.h:15598
Real Inputs_MouseSensitivityLaser
Definition doc.h:15670
Real Inputs_MouseAccel
Definition doc.h:15662
CUserV2Profile::EMapEditorMode Editors_MapEditorMode
Definition doc.h:15490
Real Interface_CrosshairLinearHue
Definition doc.h:15554
Vehicle or Character settings.
Definition doc.h:20194
Real AnalogSensitivity
Definition doc.h:20215
Real RumbleIntensity
Definition doc.h:20235
Text const SkinName
Definition doc.h:20207
Real CenterSpringIntensity
Definition doc.h:20243
Real AnalogDeadZone
Definition doc.h:20219
This is a video playback handle.
Definition doc.h:14495
Real PlayCursor
Definition doc.h:14555
Boolean AutoProcessing
Definition doc.h:14535
Documentation for class CVideoManager.
Definition doc.h:4319
Documentation for class CVoiceChatConfig.
Definition doc.h:16253
Documentation for class CVoiceChatEvent_DisplayUI.
Definition doc.h:3013
Documentation for class CVoiceChatEvent_Message.
Definition doc.h:3024
Documentation for class CVoiceChatEvent_SpeakingUsersChanged.
Definition doc.h:3047
Documentation for class CVoiceChatEvent_User_IsConnected.
Definition doc.h:3073
Documentation for class CVoiceChatEvent_User_IsMuted.
Definition doc.h:3054
Documentation for class CVoiceChatEvent_User_IsSpeaking.
Definition doc.h:3088
Documentation for class CVoiceChatEvent.
Definition doc.h:3103
API for webservices notifications.
Definition doc.h:5553
CTaskResult_WSNotification Notification_PopNext(Ident UserId)
Array< CTaskResult *const > TaskResults
Definition doc.h:5558
Boolean Notification_IsAvailable(Ident UserId)
Void TaskResult_Release(Ident TaskId)
Asynchronous task result.
Definition doc.h:20024
Asynchronous task result.
Definition doc.h:20821
Asynchronous task result.
Definition doc.h:20034
Asynchronous task result.
Definition doc.h:17857
Asynchronous task result.
Definition doc.h:17843
Asynchronous task result.
Definition doc.h:19529
Asynchronous task result.
Definition doc.h:19610
Asynchronous task result.
Definition doc.h:19620
Asynchronous task result.
Definition doc.h:19729
Asynchronous task result.
Definition doc.h:19739
Asynchronous task result.
Definition doc.h:19808
Asynchronous task result.
Definition doc.h:19953
Asynchronous task result.
Definition doc.h:20014
Asynchronous task result.
Definition doc.h:20502
Asynchronous task result.
Definition doc.h:20099
Asynchronous task result.
Definition doc.h:20252
Asynchronous task result.
Definition doc.h:19868
Asynchronous task result.
Definition doc.h:20301
Asynchronous task result.
Definition doc.h:20563
Asynchronous task result.
Definition doc.h:20425
Asynchronous task result.
Definition doc.h:20415
Asynchronous task result.
Definition doc.h:20366
Asynchronous task result.
Definition doc.h:20136
An event.
Definition doc.h:17505
Documentation for class CXmlRpc.
Definition doc.h:8375
Documentation for class CZone.
Definition doc.h:20143
Documentation for class SConstString.
Definition doc.h:10680
Documentation for class SConstStringInt.
Definition doc.h:10673
Standard animation functions.
Definition doc.h:22134
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.
Standard color manipulation functions.
Definition doc.h:22478
Text RgbToHex3(Vec3 _Rgb)
Returns the Hexa3 corresponding to the RGB given.
Vec3 HexToRgb(Text _Text)
Returns the RGB color corresponding to Hex.
Vec3 Hex6ToRgb(Text _Text)
Returns the RGB color corresponding to Hex6.
Text RgbToHex6(Vec3 _Rrggbb)
Returns the Hexa6 corresponding to the RGB given.
Vec3 Hex3ToRgb(Text _Text)
Returns the RGB color corresponding to Hex3.
Standard map coordinates manipulation functions.
Definition doc.h:22095
Standard mathematical operations, angles are in radians unless specified.
Definition doc.h:21380
Integer Clamp(Integer _X, Integer _Min, Integer _Max)
Returns the value X clamped to the range Min..Max.
Real Norm1(Vec2 _Argument1)
Returns the sum of the absolute value of each component.
Integer Max(Integer _A, Integer _B)
Returns the maximum between A and B.
Real Length(Vec2 _Argument1)
Euclidian norm of the vector.
Real Norm0(Vec2 _Argument1)
Returns maximum of the absolute value of each component.
Integer Min(Integer _A, Integer _B)
Returns the minimum between A and B.
Real RadToDeg(Real _Radian)
Converts an angle from radians to degrees.
Real DegToRad(Real _Degree)
Converts an angle from degrees to radians.
Real Mod(Real _X, Real _Min, Real _Max)
Returns the modulus of X in the range Min..Max.
Standard Text manipulation functions.
Definition doc.h:21729
Vec3 ToColor(Text _Text)
Returns the RGB color corresponding to _Text.
Array< Text > Split(Text _Separators, Text _Text)
Splits a given text based on a given separators set.
Text SubString(Text _Text, Integer _Start, Integer _Length)
Returns a substring of _Text.
Boolean EndsWith(Text _TextToFind, Text _TextToSearchIn)
Return True if the Text ends with the TextToFind.
Real ToReal(Text _Text)
Returns the Real corresponding to _Text.
Text RegexReplace(Text _Pattern, Text _Text, Text _Flags, Text _Replacement)
Replace the _Pattern in the matching text with _Replacement.
Text FormatRank(Integer _Rank, Boolean _ShortFormat)
Returns the rank corresponding to a number, formatted according to the locale. ShortFormat: '25k' oth...
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 Join(Text _Separator, Array< Text > _Texts)
Joins a set of texts with the given separator.
Text GetTranslatedText(Text _Text)
Lookup the text in the current translation dictionary.
Boolean StartsWith(Text _TextToFind, Text _TextToSearchIn)
Return True if the Text starts with the TextToFind.
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.
Array< Text > RegexFind(Text _Pattern, Text _Text, Text _Flags)
Find occurences of the _Pattern in the _Text.
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.
Text TimeToText(Integer _Time)
Returns the Text corresponding to _Time.
Text CloseStyleTags(Text _String)
Return a string where the previously unclosed $< tags have their $> counterpart.
Integer ToInteger(Text _Text)
Returns the Integer corresponding to _Text.
Text SubText(Text _Text, Integer _Start, Integer _Length)
Returns a substring of _Text.
Array< Text > RegexMatch(Text _Pattern, Text _Text, Text _Flags)
Captures the groups of the _Pattern in the matching _Text. group[0] is the whole pattern match.
Standard time manipulation functions.
Definition doc.h:22357
Real Clamp01TZDay(Text _Timestamp)
Returns a Real between 0 and 1, given a timestamp, according to the day cycle in local timezone.
Text GetCurrent()
Gets current timestamp.
Integer GetLocalDelta_Months(Text _Timestamp1, Text _Timestamp2)
Returns the duration in complete months between 2 timestamps, according to the local dates.
Integer GetDelta(Text _Timestamp1, Text _Timestamp2)
Returns the duration in seconds between 2 timestamps. May be clamped if huge.
Real Clamp01UTCDay(Text _Timestamp)
Returns a Real between 0 and 1, given a timestamp, according to the day cycle in UTC timezone.
Integer GetMillisecondsSinceInit()
Returns local milliseconds elapsed since game initialisation.
Real Clamp01(Text _Boundary1, Text _Boundary2, Text _Timestamp)
Returns a Real between 0 and 1, given an interval and a timestamp.
Text FormatDelta(Text _Timestamp1, Text _Timestamp2, EDurationFormats _Format)
Returns the duration between 2 timestamps, formatted according to the locale. Not available on server...
Integer GetLocalDelta_Years(Text _Timestamp1, Text _Timestamp2)
Returns the duration in complete years between 2 timestamps, according to the local dates.
Integer Compare(Text _Timestamp1, Text _Timestamp2)
Compares 2 timestamps.
Text FormatDate(Text _Timestamp, EDateFormats _Format)
Returns the date corresponding to a timestamp, formatted according to the locale. Not available on se...
Definition doc.h:24
Definition doc.h:48
Definition doc.h:15
Definition doc.h:21
Definition doc.h:19
Definition doc.h:20
Definition doc.h:13
Definition doc.h:14
Definition doc.h:16
Definition doc.h:17
Definition doc.h:18
Definition doc.h:12