Trackmania ManiaScript Reference 2024.9.17.1117
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-09-17_11_17 git=127252-120dea21a9e 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 CTaskResult_NSMap Map_NadeoServices_Register(Ident UserId,Text MapUid);
4719 CTaskResult_NSSkin Skin_NadeoServices_Get(Ident UserId,Text SkinId);
4723 CTaskResult_NSSkin Skin_NadeoServices_GetFromChecksum(Ident UserId,Text SkinChecksum);
4727 CTaskResult_NSSkinList Skin_NadeoServices_GetList(Ident UserId,Array<Text> SkinIdList);
4731 CTaskResult_NSSkinList Skin_NadeoServices_GetListFromChecksum(Ident UserId,Array<Text> SkinChecksumList);
4735 CTaskResult_NSSkinList Skin_NadeoServices_GetListFromUser(Ident UserId,Text WebServicesUserId);
4739 CTaskResult_NSSkin Skin_NadeoServices_Register(Ident UserId,Text SkinDisplayName,Text SkinFileName);
4743 CTaskResult AccountSkin_NadeoServices_AddFavorite(Ident UserId,Text SkinId);
4747 CTaskResult_NSSkinList AccountSkin_NadeoServices_GetFavoriteList(Ident UserId);
4751 CTaskResult_NSSkinList AccountSkin_NadeoServices_GetList(Ident UserId);
4755 CTaskResult_NSSkinList AccountSkin_NadeoServices_GetListForUser(Ident UserId,Text WebServicesUserId);
4759 CTaskResult AccountSkin_NadeoServices_RemoveFavorite(Ident UserId,Text SkinId);
4763 CTaskResult_NSSkin AccountSkin_NadeoServices_Set(Ident UserId,Text SkinId);
4767 CTaskResult AccountSkin_NadeoServices_Unset(Ident UserId,Text SkinType);
4779 CTaskResult_Ghost Ghost_Download(Text FileName,Text Url);
4783 CTaskResult Ghost_Upload(Text Url,CGhost Ghost,Text AdditionalHeaders);
4787 Void Replay_RefreshFromDisk();
4795 CTaskResult_ReplayList Replay_GetGameList(Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4799 CTaskResult_ReplayList Replay_GetFilteredGameList(Integer Scope,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4811 CTaskResult Replay_Author_Save(CMap Map,CGhost Ghost);
4815 CTaskResult_FileList Media_GetGameList(CDataFileMgr::EMediaType Type,Text Path,Boolean Flatten);
4819 CTaskResult_FileList Media_GetGameList(CDataFileMgr::EMediaType Type,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4823 CTaskResult_FileList Media_GetFilteredGameList(CDataFileMgr::EMediaType Type,Integer Scope,Text Path,Boolean Flatten,Boolean SortByNameElseByDate,Boolean SortOrderAsc);
4827 Void Media_RefreshFromDisk(CDataFileMgr::EMediaType Type,Integer Scope);
4831 CTaskResult_GameModeList GameMode_GetGameList(Integer Scope,Text Path,Boolean Flatten);
4835 CTaskResult Pack_DownloadOrUpdate(Text DisplayName,Text Url);
4839 CTaskResult UserSave_DeleteFile(Text Path);
4848};
4849
4853class CScoreMgr : public CNod {
4854public :
4874 CTaskResult Map_SetNewRecord_v2(Ident UserId,Text MapUid,Text GameMode,Text GameModeCustomData,CGhost Ghost);
4878 Integer Map_GetRecord_v2(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4882 Void Map_GetRecordFullScore(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData,Integer Time,Integer Points,Integer RespawnCount);
4886 CTaskResult_Ghost Map_GetRecordGhost_v2(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4890 Integer Map_GetMedal(Ident UserId,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4894 Integer Map_GetMultiAsyncLevelRecord_v2(Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData,Integer MultiAsyncLevel);
4898 CTaskResult_Ghost Map_GetMultiAsyncLevelRecordGhost_v2(Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData,Integer MultiAsyncLevel);
4902 CTaskResult_MapRecordList Map_GetPlayerListRecordList(Ident UserId,Array<Text> WebServicesUserIdList,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
4906 CTaskResult Map_LoadPBScoreList(Ident UserId,Array<Text> MapUidList,Text GameMode,Text GameModeCustomData);
4910 CTaskResult_Season Season_Create(Ident UserId,Text SeasonName,Text GameMode,Text GameModeCustomData,Text MapRecordType,Integer StartTimeStamp,Integer EndTimeStamp,Array<Text> MapUidList);
4914 CTaskResult_Season Season_Update(Ident UserId,Text SeasonId,Text SeasonName,Text GameMode,Text GameModeCustomData,Text MapRecordType,Integer StartTimeStamp,Integer EndTimeStamp,Array<Text> MapUidList);
4918 CTaskResult_Season Season_AddMapList(Ident UserId,Text SeasonId,Array<Text> MapUidList);
4922 CTaskResult_Season Season_RemoveMapList(Ident UserId,Text SeasonId,Array<Text> MapUidList);
4963};
4964
4968class CRankingsZoneMgr : public CNod {
4969public :
4973 Array<CTaskResult* const > TaskResults;
4977 Void TaskResult_Release(Ident TaskId);
4981 Void GetPathAndName(Text ZoneFullPath,Text ZonePath,Text ZoneName);
4985 CTaskResult_ZoneList GetZoneList(Array<Text> ZoneIdList);
4989 CTaskResult_ZoneList GetChildZoneList(Text ZoneFullPath);
4993 CTaskResult_UserZoneList RetrieveUserZoneList(Ident UserId,Array<Text> WebServicesUserIdList);
4997 CTaskResult SetUserZone(Ident UserId,Text ZoneFullPath);
4998};
4999
5003class CUserV2Manager : public CNod {
5004public :
5008 enum ECrossPlayState {
5009 Unknown,
5010 Disabled,
5011 Enabled,
5012 };
5016 enum EPrestigeMode {
5017 Unknown,
5018 Ranked,
5019 Royal,
5020 Season,
5021 };
5025 CUserV2Profile * const MainUserProfile;
5029 Array<CTaskResult* const > TaskResults;
5033 Void TaskResult_Release(Ident TaskId);
5037 CTaskResult TaskError_ShowSystemDialog(Ident UserId,Text ErrorCode);
5045 Text FindDisplayName(Text WebServicesUserId,Boolean IsFirstPartyDisplayName);
5049 CMasterServerUser * const MainUserWebServicesInfo;
5053 Text ResolveURLShorcut(Text ShortCutId);
5057 CMasterServerUser FindWebServicesUserInfo(Ident UserId);
5061 CTaskResult CheckNetworkAvailability(Ident UserId);
5065 Boolean const IsNetworkAvailable;
5069 CTaskResult_Connect ConnectUser(Ident UserId);
5073 CTaskResult_Connect ConnectUser(Ident UserId,Boolean ForceUbisoftConnectOverlay);
5077 CTaskResult ConnectUser(Ident UserId,Boolean ForceUbisoftConnectOverlay,Boolean OfflineMode);
5081 CTaskResult Commerce_ShowPrimaryStore(Ident UserId);
5085 CTaskResult_Bool CrossPlay_IsEnabled(Ident UserId);
5089 Boolean CrossPlay_Setting_GetEnabled(Ident UserId);
5093 Void CrossPlay_Setting_SetEnabled(Ident UserId,Boolean Value);
5097 CUserV2Manager::ECrossPlayState CrossPlay_V2_IsEnabled(Ident UserId);
5101 Void CrossPlay_V2_SetEnabled(Ident UserId,Boolean Enabled);
5105 Boolean Blocklist_CanViewUGC(Ident UserId,Text WebServicesUserId);
5109 Integer Friend_GetLastChangeIndex(Ident UserId);
5113 CTaskResult_FriendList Friend_GetList(Ident UserId);
5117 CTaskResult_Session_Get LiveSession_GetInfo(Ident UserId,Text SessionId);
5121 CTaskResult_UserNewsList News_GetProfileNewsList(Ident UserId);
5125 CTaskResult_UserNewsList News_GetSpaceNewsList(Ident UserId);
5129 CTaskResult News_OpenLink(Ident UserId,Text Type,Text Param);
5133 CTaskResult_UserPrestigeList Prestige_GetAccountPrestigeList(Ident UserId);
5137 CTaskResult_UserPrestige Prestige_GetCurrentAccountPrestige(Ident UserId);
5141 CTaskResult_UserPrestige Prestige_GetCurrentAccountPrestigeForUser(Ident UserId,Text WebServicesUserId);
5145 CTaskResult_PrestigeList Prestige_GetPrestigeList(Ident UserId,CUserV2Manager::EPrestigeMode Mode,Integer Year,Text CategoryType);
5149 CTaskResult_UserPrestige Prestige_SetCurrentAccountPrestige(Ident UserId,Text PrestigeId);
5153 CTaskResult_UserPrestige Prestige_ResetCurrentAccountPrestige(Ident UserId);
5157 CTaskResult_Squad Squad_AcceptInvitation(Ident UserId,Text SquadId);
5161 CTaskResult_Squad Squad_CancelInvitation(Ident UserId,Text SquadId,Text WebServicesUserId);
5165 CTaskResult_Squad Squad_Create(Ident UserId,Text SquadName,Integer Size);
5169 CTaskResult_Squad Squad_Create(Ident UserId,Text SquadName,Integer Size,Text Type);
5173 CTaskResult_Squad Squad_DeclineInvitation(Ident UserId,Text SquadId);
5177 CTaskResult_Squad Squad_Get(Ident UserId,Text SquadId);
5181 CTaskResult_Squad Squad_GetCurrent(Ident UserId);
5185 CTaskResult_Squad Squad_Invite(Ident UserId,Text SquadId,Text WebServicesUserId);
5189 CTaskResult Squad_JoinSession(Ident UserId,Text SessionId,Boolean IsFirstPartySession);
5193 CTaskResult_Squad Squad_Leave(Ident UserId,Text SquadId);
5197 CTaskResult_Squad Squad_RemoveMember(Ident UserId,Text SquadId,Text WebServicesUserId);
5201 CTaskResult_Squad Squad_SetLeader(Ident UserId,Text SquadId,Text WebServicesUserId);
5205 Void Squad_SetLocked(Ident UserId,Text SquadId,Boolean Locked);
5209 Void Squad_SetType(Ident UserId,Text SquadId,Text Type);
5213 Void Squad_SetEnabled(Ident UserId,Boolean Enabled);
5217 Array<CVoiceChatEvent* const > VoiceChat_Events;
5221 Boolean const VoiceChat_DisplayUI;
5225 Boolean VoiceChat_Mute_Myself;
5229 Void VoiceChat_MuteAll();
5233 Void VoiceChat_UnmuteAll();
5237 Array<CGameUserVoiceChat* const > VoiceChat_Users;
5241 Array<CGameUserVoiceChat* const > VoiceChat_Users_Local;
5245 Array<CGameUserVoiceChat* const > VoiceChat_Users_Remote;
5253 Array<CGameUserVoiceChat* const > VoiceChat_Users_Muted;
5257 Array<CGameUserVoiceChat* const > VoiceChat_Users_Remote_Muted;
5261 CGameUserVoiceChat VoiceChat_FindUserFromWebServicesUserId(Text WebServicesUserId);
5265 Integer Subscription_GetEndTimeStamp(Ident UserId,Text SubscriptionName);
5269 Boolean Subscription_IsRefreshingInfo(Ident UserId);
5273 CTaskResult_StringInt Tag_GetClubTag(Ident UserId);
5277 CTaskResult_ClubTagList Tag_GetClubTagList(Ident UserId,Array<Text> WebServicesUserIdList);
5281 CTaskResult Tag_SetClubTag(Ident UserId,Text ClubTag);
5282};
5283
5287class CAnimManager : public CNod {
5288public :
5292 enum EAnimManagerEasing {
5293 Linear,
5294 QuadIn,
5295 QuadOut,
5296 QuadInOut,
5297 CubicIn,
5298 CubicOut,
5299 CubicInOut,
5300 QuartIn,
5301 QuartOut,
5302 QuartInOut,
5303 QuintIn,
5304 QuintOut,
5305 QuintInOut,
5306 SineIn,
5307 SineOut,
5308 SineInOut,
5309 ExpIn,
5310 ExpOut,
5311 ExpInOut,
5312 CircIn,
5313 CircOut,
5314 CircInOut,
5315 BackIn,
5316 BackOut,
5317 BackInOut,
5318 ElasticIn,
5319 ElasticOut,
5320 ElasticInOut,
5321 ElasticIn2,
5322 ElasticOut2,
5323 ElasticInOut2,
5324 BounceIn,
5325 BounceOut,
5326 BounceInOut,
5327 };
5331 Void Add(CMlControl Control,Text XmlTarget,Integer StartTime,Integer Duration,CAnimManager::EAnimManagerEasing EasingFunc);
5335 Void AddChain(CMlControl Control,Text XmlTarget,Integer Duration,CAnimManager::EAnimManagerEasing EasingFunc);
5339 Void Add(CMlControl Control,Text XmlTarget,Integer Duration,CAnimManager::EAnimManagerEasing EasingFunc);
5343 Void Flush(CMlControl Control);
5344};
5345
5349class CMenuSceneManager : public CNod {
5350public :
5354 Ident SceneCreate(Text LayoutFileName);
5358 Void SceneDestroy(Ident SceneId);
5362 Void CameraSetLocation(Ident SceneId,Vec3 Position,Real AngleDeg);
5366 Void CameraSetLocation(Ident SceneId,Vec3 Position,Real AngleDeg,Real FovY_Deg);
5370 Void CameraSetFromItem(Ident SceneId,Ident ItemId);
5374 Void LightDir0Set(Ident SceneId,Vec3 sRGB,Real Intensity);
5378 Ident ItemCreate(Ident SceneId,Text ModelName,Text SkinName,Text SkinUrl);
5382 Ident ItemCreate(Ident SceneId,Text ModelName,Text SkinName,Text SkinUrl,Text SkinOptions);
5386 Void ItemDestroy(Ident SceneId,Ident ItemId);
5390 Void ItemSetLocation(Ident SceneId,Ident ItemId,Vec3 Position,Real AngleDeg,Boolean IsTurntable);
5394 Void ItemAttachTo(Ident SceneId,Ident ItemId,Ident ParentItemId);
5398 Void ItemSetVehicleState(Ident SceneId,Ident ItemId,Real Steer,Boolean Brakes,Boolean FrontLight,Integer TurboLvl,Integer BoostLvl,Boolean BurnoutSmoke);
5402 Void ItemSetPlayerState(Ident SceneId,Ident ItemId,Vec3 LightrailColor,Vec3 DossardColor,Text DossardNumber,Text DossardTrigram);
5406 Void ItemSetPlayerState(Ident SceneId,Ident ItemId,CUser User);
5410 Void ItemTriggerPlayerGesture(Ident SceneId,Ident ItemId);
5414 Void ItemSetPivot(Ident SceneId,Ident ItemId,Vec3 Pivot);
5418 Void ItemSetVisible(Ident SceneId,Ident ItemId,Boolean IsVisible);
5422 Void PlaneReflectEnable(Ident SceneId,Real OutOpacity,CMlQuad Quad0,CMlQuad Quad1,CMlQuad Quad2,CMlQuad Quad3);
5426 Void PlaneReflectEnable(Ident SceneId,Real OutOpacity,CMlQuad Quad0,CMlQuad Quad1,CMlQuad Quad2,CMlQuad Quad3,Real HorizonAngleDeg_InCamera);
5430 Void PlaneReflectRefresh();
5434 Void SetBackgroundQuads(Ident SceneId,CMlQuad Quad0,CMlQuad Quad1,CMlQuad Quad2,CMlQuad Quad3);
5438 Void CubeMapSetImage2ds(Ident SceneId,Text RelName0,Text RelName1,Text RelName2,Text RelName3);
5442 Void ColorGradingSetImage2ds(Ident SceneId,Text RelName0,Text RelName1,Text RelName2,Text RelName3);
5449 Void MoodLightDir0Set(Ident SceneId,Integer iMood,Vec3 sRGB,Real Intensity,Real AltitudeDeg,Real AzimutDeg);
5453 Void PodiumTweakShadingSet(Ident SceneId,Real BaseColor,Real CubeReflect,Real PlaneReflect);
5457 Void PostFxSet(Ident SceneId,Real BloomIntensity);
5458};
5459
5466class CSystemPlatform : public CNod {
5467public :
5471 enum ESystemPlatform {
5472 None,
5473 Steam,
5474 UPlay,
5475 PS4,
5476 XBoxOne,
5477 PS5,
5478 XBoxSeries,
5479 Stadia,
5480 Luna,
5481 };
5485 enum ESystemSkuIdentifier {
5486 Unknown,
5487 EU,
5488 US,
5489 JP,
5490 CN,
5491 };
5495 CSystemPlatform::ESystemPlatform const Platform;
5499 CSystemPlatform::ESystemSkuIdentifier const SkuIdentifier;
5503 Text const ExeVersion;
5511 Text const CurrentLocalDateText;
5515 Text const CurrentTimezone;
5519 Text const CurrentTimezoneTimeOffset;
5523 Text const ExtraTool_Info;
5527 Text ExtraTool_Data;
5531 Void ClipboardSet(Text ClipboardText);
5535 Void FlashWindow();
5540};
5541
5564
5573public :
5574};
5575
5584public :
5588 Array<CManiaAppEvent* const > PendingEvents;
5592 Void Menu_Quit();
5596 Void Menu_Home();
5600 Void Menu_Solo();
5604 Void Menu_Local();
5608 Void Menu_Internet();
5612 Void Menu_Editor();
5616 Void Menu_Profile();
5620 Boolean LoadingScreenRequireKeyPressed;
5624 Boolean DontScaleMainMenuForHMD;
5632 CTitleControl * const TitleControl;
5640 CNotificationsConsumer * const Notifications;
5644 Text const ExternalRequest_Type;
5648 Array<Text> ExternalRequest_Data;
5656 Void LogToSessionTrace(Text Text);
5660 CMatchSettingsManager * const MatchSettingsManager;
5664 CMenuSceneManager * const MenuSceneManager;
5668 Void Authentication_GetToken(Ident UserId,Text AppLogin);
5672 Boolean const Authentication_GetTokenResponseReceived;
5676 Integer const Authentication_ErrorCode;
5680 Text const Authentication_Token;
5684 Boolean Adverts_UsePersonnalData;
5688 Boolean Adverts_Enabled;
5692 CVoiceChatConfig * const VoiceChat;
5693};
5694
5703public :
5707 enum CardinalDirections {
5708 North,
5709 East,
5710 South,
5711 West,
5712 };
5716 enum CardinalDirections8 {
5717 North,
5718 East,
5719 South,
5720 West,
5721 NorthEast,
5722 SouthEast,
5723 SouthWest,
5724 NorthWest,
5725 };
5729 enum RelativeDirections {
5730 Forward,
5731 RightForward,
5732 Right,
5733 RightBackward,
5734 Backward,
5735 LeftBackward,
5736 Left,
5737 LeftForward,
5738 };
5742 enum PlaceMode {
5743 Unknown,
5744 Terraform,
5745 Block,
5746 Macroblock,
5747 Skin,
5748 CopyPaste,
5749 Test,
5750 Plugin,
5751 CustomSelection,
5752 OffZone,
5753 BlockProperty,
5754 Path,
5755 GhostBlock,
5756 Item,
5757 Light,
5758 FreeBlock,
5759 FreeMacroblock,
5760 };
5764 enum EditMode {
5765 Unknown,
5766 Place,
5767 FreeLook,
5768 Erase,
5769 Pick,
5770 SelectionAdd,
5771 SelectionRemove,
5772 };
5776 enum ShadowsQuality {
5777 NotComputed,
5778 VeryFast,
5779 Fast,
5780 Default,
5781 High,
5782 Ultra,
5783 };
5787 enum ValidationStatus {
5788 NotValidable,
5789 Validable,
5790 Validated,
5791 };
5795 enum MapElemColor {
5796 Default,
5797 White,
5798 Green,
5799 Blue,
5800 Red,
5801 Black,
5802 };
5806 enum PhaseOffset {
5807 None,
5808 One8th,
5809 Two8th,
5810 Three8th,
5811 Four8th,
5812 Five8th,
5813 Six8th,
5814 Seven8th,
5815 };
5819 enum MapElemLightmapQuality {
5820 Normal,
5821 High,
5822 VeryHigh,
5823 Highest,
5824 Low,
5825 VeryLow,
5826 Lowest,
5827 };
5831 enum MapElemColorPalette {
5832 Classic,
5833 Stunt,
5834 Red,
5835 Orange,
5836 Yellow,
5837 Lime,
5838 Green,
5839 Cyan,
5840 Blue,
5841 Purple,
5842 Pink,
5843 White,
5844 Black,
5845 };
5853 CMap * const Map;
5857 Text const MapName;
5861 Text const MapFileName;
5865 Boolean const IsEditorReadyForRequest;
5869 Boolean const BackToMainMenuRequested;
5873 Boolean HoldLoadingScreen;
5877 Void HideOtherPlugins();
5881 Void ShowOtherPlugins();
5885 Void ComputeShadows();
5889 Void ComputeShadows(CMapEditorPlugin::ShadowsQuality ShadowsQuality);
5893 CMapEditorPlugin::ShadowsQuality const CurrentShadowsQuality;
5897 Boolean const IsUltraShadowsQualityAvailable;
5901 Void DisplayDefaultSetObjectivesDialog();
5905 Boolean Undo();
5909 Boolean Redo();
5913 Void Help();
5917 Void Validate();
5921 Void AutoSave();
5925 Void Quit();
5929 Void QuickQuit();
5933 Void QuitAndSetResult(Text Type,Array<Text> Data);
5937 Void QuickQuitAndSetResult(Text Type,Array<Text> Data);
5941 Void TestMapFromStart();
5945 Void TestMapFromCoord(Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
5949 Void TestMapFromMacroblockInstance(CMacroblockInstance MbInstance);
5953 Void TestMapWithMode(Text RulesModeName);
5957 Void TestMapWithMode(Text RulesModeName,Text SettingsXml);
5961 Void TestMapWithMode_SplitScreen(Text RulesModeName);
5965 Void TestMapWithMode_SplitScreen(Text RulesModeName,Integer ScreenCount);
5969 Void TestMapWithMode_SplitScreen(Text RulesModeName,Integer ScreenCount,Integer FakeCount,Text SettingsXml);
5973 Boolean EnableMapTypeStartTest;
5977 Void SaveMap(Text FileName);
5981 Void SaveMapGamepadEditor(Text FileName);
5985 Void SaveMap(Text FileName,Text Path);
5989 CMapEditorPlugin::PlaceMode PlaceMode;
5993 CMapEditorPlugin::EditMode EditMode;
5997 CMapEditorPlugin::MapElemColor NextMapElemColor;
6001 CMapEditorPlugin::MapElemColorPalette MapElemColorPalette;
6005 Void SetNextMapElemColorPalette();
6009 Boolean const IsColorBlindModeActive;
6017 Boolean ForceMacroblockColor;
6021 CMapEditorPlugin::MapElemColor GetMapElemColor(CBlock Block);
6025 CMapEditorPlugin::MapElemColor GetMapElemColor(CItemAnchor AnchoredObject);
6029 CMapEditorPlugin::MapElemColor GetMapElemColor(CAnchorData Anchor);
6033 Void SetMapElemColor(CBlock Block,CMapEditorPlugin::MapElemColor Color);
6037 Void SetMapElemColor(CItemAnchor AnchoredObject,CMapEditorPlugin::MapElemColor Color);
6041 Void SetMapElemColor(CAnchorData Anchor,CMapEditorPlugin::MapElemColor Color);
6045 Text GetColorPaletteName(CMapEditorPlugin::MapElemColorPalette EColorPalette);
6049 Vec3 GetColorPaletteCurrentColor(CMapEditorPlugin::MapElemColorPalette EColorPalette,CMapEditorPlugin::MapElemColor EColor);
6053 Vec3 GetColorPaletteColorblindColor(CMapEditorPlugin::MapElemColorPalette EColorPalette,CMapEditorPlugin::MapElemColor EColor);
6057 Vec3 GetColorPaletteNotColorblindColor(CMapEditorPlugin::MapElemColorPalette EColorPalette,CMapEditorPlugin::MapElemColor EColor);
6061 CMapEditorPlugin::PhaseOffset NextItemPhaseOffset;
6065 CMapEditorPlugin::PhaseOffset NextMbAdditionalPhaseOffset;
6069 CMapEditorPlugin::MapElemLightmapQuality NextMapElemLightmapQuality;
6073 Boolean ForceMacroblockLightmapQuality;
6077 Boolean UndergroundMode;
6081 Boolean BlockStockMode;
6085 CMapEditorInventory * const Inventory;
6089 Boolean HideInventory;
6093 Real CameraVAngle;
6097 Real CameraHAngle;
6101 Real CameraToTargetDistance;
6105 Vec3 CameraTargetPosition;
6109 Vec3 const CameraPosition;
6113 Real ThumbnailCameraVAngle;
6117 Real ThumbnailCameraHAngle;
6121 Real ThumbnailCameraRoll;
6125 Real ThumbnailCameraFovY;
6129 Vec3 ThumbnailCameraPosition;
6133 Boolean GetRaceCamera(Vec3 Position,Real Yaw,Real Pitch,Real Roll,Real FovY);
6137 Boolean EnableAirMapping;
6141 Boolean EnableMixMapping;
6145 Void RemoveAllBlocks();
6149 Void RemoveAllTerrain();
6153 Void RemoveAllOffZone();
6157 Void RemoveAllObjects();
6161 Void RemoveAll();
6165 Void RemoveAllBlocksAndTerrain();
6169 Void ShowCustomSelection();
6173 Void HideCustomSelection();
6177 Void CopyPaste_Copy();
6181 Void CopyPaste_Cut();
6185 Void CopyPaste_Remove();
6189 Void CopyPaste_SelectAll();
6193 Void CopyPaste_ResetSelection();
6197 Void OpenToolsMenu();
6201 Void EditMediatrackIngame();
6205 Void PreloadAllBlocks();
6209 Void PreloadAllItems();
6213 Boolean CanPlaceBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,Boolean OnGround,Integer VariantIndex);
6217 Boolean PlaceBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6221 Boolean CanPlaceGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6225 Boolean PlaceGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6229 Boolean CanPlaceBlock_NoDestruction(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,Boolean OnGround,Integer VariantIndex);
6233 Boolean PlaceBlock_NoDestruction(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6237 Boolean CanPlaceRoadBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6241 Boolean PlaceRoadBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6245 Boolean CanPlaceTerrainBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6249 Boolean PlaceTerrainBlocks(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6253 Boolean PlaceTerrainBlocks_NoDestruction(CBlockModel BlockModel,Int3 StartCoord,Int3 EndCoord);
6257 Boolean CanPlaceMacroblock(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6261 Boolean PlaceMacroblock(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6265 Boolean PlaceMacroblock_AirMode(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6269 Boolean CanPlaceMacroblock_NoDestruction(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6273 Boolean PlaceMacroblock_NoDestruction(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6277 Boolean CanPlaceMacroblock_NoTerrain(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6281 Boolean PlaceMacroblock_NoTerrain(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6285 Boolean RemoveMacroblock(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6289 Boolean RemoveMacroblock_NoTerrain(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6293 CBlock GetBlock(Int3 Coord);
6297 CBlock GetBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6301 CBlock GetGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6305 Boolean IsBlockModelSkinnable(CBlockModel BlockModel);
6309 Integer GetNbBlockModelSkins(CBlockModel BlockModel);
6313 Text GetBlockModelSkin(CBlockModel BlockModel,Integer SkinIndex);
6317 Boolean IsItemModelSkinnable(CGameItemModel ItemModel);
6321 Integer GetNbItemModelSkins(CGameItemModel ItemModel);
6325 Text GetItemModelSkin(CGameItemModel ItemModel,Integer SkinIndex);
6329 Text GetSkinDisplayName(Text SkinFileName);
6333 Text GetBlockSkinBg(CBlock Block);
6337 Text GetBlockSkinFg(CBlock Block);
6341 Void SetBlockSkin(CBlock Block,Text SkinFileName);
6345 Void SetBlockSkins(CBlock Block,Text BgSkinFileName,Text FgSkinFileName);
6349 Text GetItemSkinBg(CItemAnchor AnchoredObject);
6353 Text GetItemSkinFg(CItemAnchor AnchoredObject);
6357 Void SetItemSkin(CItemAnchor AnchoredObject,Text SkinFileName);
6361 Void SetItemSkins(CItemAnchor AnchoredObject,Text BgSkinFileName,Text FgSkinFileName);
6365 Boolean IsSkinForeground(CBlockModel BlockModel,Text SkinFileName);
6369 Boolean IsSkinForeground(CGameItemModel ItemModel,Text SkinFileName);
6373 Boolean IsMacroblockModelSkinnable(CMacroblockModel BlockModel);
6377 Boolean SetMacroblockSkin(CMacroblockInstance Macroblock,Text SkinFileName);
6381 Boolean OpenBlockSkinDialog(CBlock Block);
6385 Boolean RemoveBlock(Int3 Coord);
6389 Boolean RemoveBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6393 Boolean RemoveGhostBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6397 Boolean RemoveTerrainBlocks(Int3 StartCoord,Int3 EndCoord);
6401 Integer GetBlockGroundHeight(CBlockModel BlockModel,Integer CoordX,Integer CoordZ,CMapEditorPlugin::CardinalDirections Dir);
6405 Integer GetGroundHeight(Integer CoordX,Integer CoordZ);
6409 Int3 GetMouseCoordOnGround();
6413 Int3 GetMouseCoordAtHeight(Integer CoordY);
6417 CBlock GetStartLineBlock();
6421 Boolean RemoveItem(CAnchorData Item);
6425 Void CopyPaste_AddOrSubSelection(Int3 StartCoord,Int3 EndCoord);
6429 Boolean CopyPaste_Symmetrize();
6433 Integer CopyPaste_GetSelectedCoordsCount();
6437 Void SaveMacroblock(CMacroblockModel MacroblockModel);
6441 Boolean CopyPaste_ApplyColorToSelection(CMapEditorPlugin::MapElemColor Color);
6445 Boolean CopyPaste_IncreaseSelectionPhaseOffset(CMapEditorPlugin::PhaseOffset Offset);
6449 Boolean CopyPaste_DecreaseSelectionPhaseOffset(CMapEditorPlugin::PhaseOffset Offset);
6453 Boolean CopyPaste_SetSelectionPhaseOffset(CMapEditorPlugin::PhaseOffset Offset);
6457 Boolean CopyPaste_ApplyLightmapQualityToSelection(CMapEditorPlugin::MapElemLightmapQuality LightmapQuality);
6461 Void CopyPaste_GetLightmapQualityInSelection();
6465 Array<CMapEditorPlugin::MapElemLightmapQuality> CopyPaste_GetLightmapQualityInSelection_Results;
6469 CMacroblockModel GetMacroblockModelFromFilePath(Text MacroblockModelFilePath);
6473 CBlockModel GetTerrainBlockModelFromName(Text TerrainBlockModelName);
6477 CBlockModel GetBlockModelFromName(Text BlockModelName);
6481 CBlockClipList CreateFrameClipList();
6485 CBlockClipList CreateFixedClipList();
6489 Void UnvalidateMetadata();
6493 Void UnvalidateGameplayInfo();
6497 Void UnvalidatePlayfield();
6501 Boolean RemoveMacroblock_NoTerrain_NoUnvalidate(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6505 Boolean PlaceMacroblock_NoTerrain_NoUnvalidate(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
6509 Void ResetAutoRepeat();
6513 Void ComputeItemsForMacroblockInstance(CMacroblockInstance MacroBlockInstance);
6517 Array<CItemAnchor* const > MacroblockInstanceItemsResults;
6521 Void GetConnectResults(CBlock ExistingBlock,CBlockModel NewBlock);
6525 Void GetConnectResults(CBlock ExistingBlock,CMacroblockModel NewBlock);
6529 Void GetConnectResults(CMacroblockInstance ExistingBlock,CBlockModel NewBlock);
6533 Void GetConnectResults(CMacroblockInstance ExistingBlock,CMacroblockModel NewBlock);
6537 Integer GetStartBlockCount(Boolean IncludeMultilaps);
6541 Integer GetFinishBlockCount(Boolean IncludeMultilaps);
6545 Integer GetMultilapBlockCount();
6549 Integer GetCheckpointBlockCount();
6553 Integer GetItemsCountResult();
6557 Array<Text> GetItemsCountRequest;
6561 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor);
6565 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor,Integer UserData);
6569 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CBlockClipList DefaultClipList,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor);
6573 CMacroblockInstance CreateMacroblockInstance(CMacroblockModel MacroblockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir,CBlockClipList DefaultClipList,CMapEditorPlugin::MapElemColor Color,Boolean ForceMacroblockColor,Integer UserData);
6577 CMacroblockInstance GetMacroblockInstanceFromOrder(Integer Order);
6581 CMacroblockInstance GetMacroblockInstanceFromUnitCoord(Int3 Coord);
6585 CMacroblockInstance GetLatestMacroblockInstance();
6589 CMacroblockInstance GetLatestMacroblockInstance(Integer Offset);
6593 CMacroblockInstance GetMacroblockInstanceConnectedToClip(CBlockClip Clip);
6597 Boolean RemoveMacroblockInstance(CMacroblockInstance MacroblockInstance);
6601 Boolean RemoveMacroblockInstanceFromOrder(Integer Order);
6605 Boolean RemoveMacroblockInstanceFromUnitCoord(Integer Order);
6609 Boolean RemoveMacroblockInstancesByUserData(Integer UserData);
6613 Void ResetAllMacroblockInstances();
6617 Integer GetMaxOrder();
6621 Boolean SetMapType(Text MapType);
6625 Text GetMapType();
6629 Void SetMapStyle(Text MapStyle);
6633 Text GetMapStyle();
6637 Text GetAvailableMapName();
6641 Boolean IsMapFileNameAvailable(Text MapName);
6645 Vec3 GetVec3FromCoord(Int3 Coord);
6649 CMapEditorCamera * const Camera;
6653 CMapEditorCursor * const Cursor;
6661 Array<Text> MediatrackIngameClips;
6665 Integer MediatrackIngameEditedClipIndex;
6669 Array<CBlock* const > Blocks;
6673 Array<CBlockModel* const > BlockModels;
6677 Array<CBlockModel* const > TerrainBlockModels;
6681 Array<CMacroblockModel* const > MacroblockModels;
6685 Array<CBlock* const > ClassicBlocks;
6689 Array<CBlock* const > TerrainBlocks;
6693 Array<CBlock* const > GhostBlocks;
6697 Array<CBlockClipList* const > FixedClipLists;
6701 Array<CBlockClipList* const > FrameClipLists;
6705 Array<CBlockClipList* const > MacroblockInstanceClipLists;
6709 Array<CMacroblockInstance* const > MacroblockInstances;
6717 Array<CAnchorData* const > AnchorData;
6721 Boolean DoesAnchorHaveSpawn(CAnchorData Anchor);
6725 Array<Int3> CustomSelectionCoords;
6729 Vec3 CustomSelectionRGB;
6733 Boolean EnableEditorInputsCustomProcessing;
6737 Boolean EnableCursorShowingWhenInterfaceIsFocused;
6741 Boolean HideEditorInterface;
6745 Boolean HideBlockHelpers;
6749 Boolean ShowPlacementGrid;
6753 Boolean const IsTesting;
6757 Boolean const IsValidating;
6761 Boolean const EditorInputIsDown_Menu;
6765 Boolean const EditorInputIsDown_SwitchToRace;
6769 Boolean const EditorInputIsDown_Undo;
6773 Boolean const EditorInputIsDown_Redo;
6777 Boolean const EditorInputIsDown_CursorTiltLeft;
6781 Boolean const EditorInputIsDown_CursorTiltRight;
6785 Boolean const EditorInputIsDown_CursorUp;
6789 Boolean const EditorInputIsDown_CursorRight;
6793 Boolean const EditorInputIsDown_CursorDown;
6797 Boolean const EditorInputIsDown_CursorLeft;
6801 Boolean const EditorInputIsDown_CursorRaise;
6805 Boolean const EditorInputIsDown_CursorLower;
6809 Boolean const EditorInputIsDown_CursorTurn;
6813 Boolean const EditorInputIsDown_CursorPick;
6817 Boolean const EditorInputIsDown_CursorPlace;
6821 Boolean const EditorInputIsDown_CursorDelete;
6825 Boolean const EditorInputIsDown_CameraUp;
6829 Boolean const EditorInputIsDown_CameraRight;
6833 Boolean const EditorInputIsDown_CameraDown;
6837 Boolean const EditorInputIsDown_CameraLeft;
6841 Boolean const EditorInputIsDown_CameraZoomNext;
6845 Boolean const EditorInputIsDown_Camera0;
6849 Boolean const EditorInputIsDown_Camera1;
6853 Boolean const EditorInputIsDown_Camera3;
6857 Boolean const EditorInputIsDown_Camera7;
6861 Boolean const EditorInputIsDown_Camera9;
6865 Boolean const EditorInputIsDown_PivotChange;
6869 Boolean const EditorInputIsDown_CursorTurnSlightly;
6873 Boolean const EditorInputIsDown_CursorTurnSlightlyAntiClockwise;
6877 Boolean const EditorInputIsDown_IconUp;
6881 Boolean const EditorInputIsDown_IconRight;
6885 Boolean const EditorInputIsDown_IconDown;
6889 Boolean const EditorInputIsDown_IconLeft;
6893 Boolean const EditorInputIsDown_RemoveAll;
6897 Boolean const EditorInputIsDown_Save;
6901 Boolean const EditorInputIsDown_SelectAll;
6905 Boolean const EditorInputIsDown_Copy;
6909 Boolean const EditorInputIsDown_Cut;
6913 Boolean const EditorInputIsDown_Paste;
6917 Real const CollectionSquareSize;
6921 Real const CollectionSquareHeight;
6925 Integer const CollectionGroundY;
6929 CMapEditorPlugin::ValidationStatus const ValidationStatus;
6941 Text ManialinkText;
6945 CMlPage * const ManialinkPage;
6946};
6947
6951class CUILayer : public CNod {
6952public :
6956 enum EUILayerType {
6957 Normal,
6958 ScoresTable,
6959 ScreenIn3d,
6960 AltMenu,
6961 Markers,
6962 CutScene,
6963 InGameMenu,
6964 EditorPlugin,
6965 ManiaplanetPlugin,
6966 ManiaplanetMenu,
6967 LoadingScreen,
6968 };
6972 enum EUILayerAnimation {
6973 None,
6974 DownFast,
6975 DownSlow,
6976 LeftFast,
6977 LeftSlow,
6978 RightFast,
6979 RightSlow,
6980 ScaleFast,
6981 ScaleSlow,
6982 UpFast,
6983 UpSlow,
6984 };
6988 Boolean IsVisible;
6992 Boolean const AnimInProgress;
6996 CUILayer::EUILayerType Type;
7000 CUILayer::EUILayerAnimation InAnimation;
7004 CUILayer::EUILayerAnimation OutAnimation;
7008 CUILayer::EUILayerAnimation InOutAnimation;
7012 Text AttachId;
7016 Text ManialinkPage;
7020 CMlPage * const LocalPage;
7024 Boolean const IsLocalPageScriptRunning;
7025};
7026
7030class CTrackingMgr : public CNod {
7031public :
7035 enum EEventColorLevel {
7036 White,
7037 Green,
7038 Blue,
7039 Red,
7040 Black,
7041 };
7045 enum EEventMedalLevel {
7046 Finished,
7047 Bronze,
7048 Silver,
7049 Gold,
7050 Author,
7051 };
7055 enum EEventSeason {
7056 Winter,
7057 Spring,
7058 Summer,
7059 Fall,
7060 };
7064 enum EPlayTimeContext {
7065 None,
7066 Club,
7067 Create,
7068 Live,
7069 Local,
7070 Solo,
7071 };
7083 Void Track_Context_PlayTime(Ident UserId,CTrackingMgr::EPlayTimeContext PlayTimeContext);
7103 Void Track_Context_MapStart(Ident UserId,Text MapUid,Text Environment);
7115 Void Track_Context_PlayStop(Ident UserId,Text Type,Text Reason,Integer NbRespawns);
7119 Void Track_Create_NewMapCreated(Ident UserId,Text Environment,Boolean IsRandomlyGenerated);
7135 Void Track_Live_RoyalPlayed_V2(Ident UserId,Integer Rank,Boolean Win,Boolean IsSuperRoyal,Text Division);
7139 Void Track_Live_RoyalSectionFinished_V2(Ident UserId,CTrackingMgr::EEventColorLevel ColorLevel);
7151 Void Track_News_PlayerAction(Ident UserId,Text NewsId,Text Placement,Text Action);
7155 Void Track_News_PlayerImpression(Ident UserId,Text NewsId,Text Placement,Integer Duration);
7159 Void Track_Player_MedalEarned(Ident UserId,Integer Finished,Integer BronzeMedal,Integer SilverMedal,Integer GoldMedal,Integer AuthorMedal,Boolean IsOfficialCampaign,Boolean IsTOTD);
7163 Void Track_Player_OfficialCampaign10TrackCompleted(Ident UserId,Integer Year,CTrackingMgr::EEventSeason Season,CTrackingMgr::EEventMedalLevel MedalLevel);
7167 Void Track_Player_OfficialCampaignAllTrackCompleted_V2(Ident UserId,Integer Year,CTrackingMgr::EEventSeason Season,CTrackingMgr::EEventMedalLevel MedalLevel);
7171 Void Track_Player_TrackOfTheDayWeekAllTrackCompleted_V2(Ident UserId,Integer Year,Integer Week,CTrackingMgr::EEventMedalLevel MedalLevel);
7175 Void Track_Player_TrophyEarned(Ident UserId,Integer T1CountPtr,Integer T2CountPtr,Integer T3CountPtr,Integer T4CountPtr,Integer T5CountPtr,Integer T6CountPtr,Integer T7CountPtr,Integer T8CountPtr,Integer T9CountPtr);
7184};
7185
7194public :
7198 enum EInteractionStatus {
7199 Active,
7200 Closed,
7201 Aborted,
7202 };
7206 Array<CManiaAppEvent* const > PendingEvents;
7210 CEditorModule * const ModuleEditor;
7214 CEditorMesh * const MeshEditor;
7218 CEditorEditor * const EditorEditor;
7222 CEditorMediaTracker * const MediaTracker;
7226 CEditorSkin * const SkinEditor;
7230 CAnyEditorPlugin::EInteractionStatus const InteractionStatus;
7231};
7232
7240public :
7241};
7242
7246class CMapInfo : public CNod {
7247public :
7251 Text const MapUid;
7255 Text const Comments;
7259 Integer const CopperPrice;
7263 Text const CollectionName;
7267 Text const AuthorLogin;
7271 Text const AuthorNickName;
7275 Text const AuthorZonePath;
7279 Text const AuthorZoneFlagUrl;
7283 Text const AuthorCountryFlagUrl;
7287 Text const MapType;
7291 Text const MapStyle;
7295 Boolean const IsPlayable;
7299 Boolean const CreatedWithSimpleEditor;
7303 Boolean const CreatedWithPartyEditor;
7307 Boolean const CreatedWithGamepadEditor;
7311 Integer const TMObjective_AuthorTime;
7315 Integer const TMObjective_GoldTime;
7319 Integer const TMObjective_SilverTime;
7323 Integer const TMObjective_BronzeTime;
7327 Integer const TMObjective_NbLaps;
7331 Boolean const TMObjective_IsLapRace;
7335 Text const Name;
7339 Text const Path;
7343 Text const FileName;
7344};
7345
7352class CClient : public CNod {
7353public :
7357 CUser * const User;
7361 CUIConfig * const UI;
7369 Text const ClientVersion;
7373 Text const ClientTitleVersion;
7377 Boolean const IsSpectator;
7382};
7383
7392class CUIConfig : public CNod {
7393public :
7397 enum EUISequence {
7398 None,
7399 Playing,
7400 Intro,
7401 Outro,
7402 Podium,
7403 CustomMTClip,
7404 EndRound,
7405 PlayersPresentation,
7406 UIInteraction,
7407 RollingBackgroundIntro,
7408 CustomMTClip_WithUIInteraction,
7409 Finish,
7410 };
7414 enum EUIStatus {
7415 None,
7416 Normal,
7417 Warning,
7418 Error,
7419 Official,
7420 };
7424 enum EVisibility {
7425 None,
7426 Normal,
7427 Manual,
7428 ForcedHidden,
7429 ForcedVisible,
7430 };
7434 enum ELabelsVisibility {
7435 None,
7436 Never,
7437 Always,
7438 WhenInFrustum,
7439 WhenVisible,
7440 WhenInMiddleOfScreen,
7441 };
7445 enum EAvatarVariant {
7446 Default,
7447 Sad,
7448 Happy,
7449 };
7453 enum EUISound {
7454 Default,
7455 Silence,
7456 StartMatch,
7457 EndMatch,
7458 StartRound,
7459 EndRound,
7460 PhaseChange,
7461 TieBreakPoint,
7462 TiePoint,
7463 VictoryPoint,
7464 Capture,
7465 TimeOut,
7466 Notice,
7467 Warning,
7468 PlayerEliminated,
7469 PlayerHit,
7470 Checkpoint,
7471 Finish,
7472 Record,
7473 ScoreProgress,
7474 RankChange,
7475 Bonus,
7476 FirstHit,
7477 Combo,
7478 PlayersRemaining,
7479 Custom1,
7480 Custom2,
7481 Custom3,
7482 Custom4,
7483 };
7487 enum ENoticeLevel {
7488 Default,
7489 PlayerInfo,
7490 PlayerWarning,
7491 MapInfo,
7492 MapWarning,
7493 MatchInfo,
7494 MatchWarning,
7495 };
7499 enum EMessageDisplay {
7500 Chat,
7501 Small,
7502 Status,
7503 Big,
7504 };
7508 enum EObserverMode {
7509 Default,
7510 Forced,
7511 Forbidden,
7512 Manual,
7513 };
7517 enum EHudVisibility {
7518 Nothing,
7519 Everything,
7520 MarkersOnly,
7521 Default,
7522 };
7526 enum ECutSceneStyle {
7527 None,
7528 TM,
7529 SM,
7530 };
7534 CUIConfig::EUISequence UISequence;
7538 Boolean const UISequenceIsCompleted;
7542 Text UISequence_CustomMTClip;
7546 Integer UISequence_CustomMTRefTime;
7550 Boolean UISequence_CanSkipIntroMT;
7554 Text UISequence_PodiumPlayersWin;
7558 Text UISequence_PodiumPlayersLose;
7562 CUIConfig::ECutSceneStyle UISequence_CutSceneStyle;
7566 Boolean DisableZoomTransitions;
7570 Text ManialinkPage;
7574 Text BigMessage;
7578 Text BigMessageAvatarLogin;
7582 CUIConfig::EAvatarVariant BigMessageAvatarVariant;
7586 CUIConfig::EUISound BigMessageSound;
7590 Integer BigMessageSoundVariant;
7594 Text StatusMessage;
7598 Text GaugeMessage;
7602 Real GaugeRatio;
7606 Integer GaugeClan;
7623 Array<CUILayer* const > UILayers;
7627 Boolean OverlayHideNotices;
7631 Boolean OverlayHideMapInfo;
7635 Boolean OverlayHideChat;
7639 Boolean OverlayHideCountdown;
7643 Boolean OverlayHideCrosshair;
7647 Boolean OverlayHideGauges;
7651 Boolean OverlayHideConsumables;
7655 Boolean OverlayHide321Go;
7659 Boolean OverlayMute321Go;
7663 Boolean OverlayHideEndMapLadderRecap;
7667 Boolean OverlayHideSpectatorInfos;
7675 Vec2 OverlayChatOffset;
7683 Vec2 CountdownCoord;
7687 Boolean NoticesFilter_HidePlayerInfo;
7691 Boolean NoticesFilter_HidePlayerWarning;
7695 Boolean NoticesFilter_HidePlayerInfoIfNotMe;
7699 Boolean NoticesFilter_HidePlayerWarningIfNotMe;
7703 Boolean NoticesFilter_HideMapInfo;
7707 Boolean NoticesFilter_HideMapWarning;
7711 Boolean NoticesFilter_HideMatchInfo;
7715 Boolean NoticesFilter_HideMatchWarning;
7719 CUIConfig::ENoticeLevel NoticesFilter_LevelToShowAsBigMessage;
7723 Text ScoreTable;
7727 CUIConfig::EVisibility ScoreTableVisibility;
7731 Text SmallScoreTable;
7735 CUIConfig::EVisibility SmallScoreTableVisibility;
7739 Boolean ScoreTableOnlyManialink;
7743 Boolean AltMenuNoDefaultScores;
7747 Boolean AltMenuNoCustomScores;
7751 Boolean OverlayScoreSummary;
7755 Ident ScoreSummary_Player1;
7759 Integer ScoreSummary_Points1;
7763 Integer ScoreSummary_RoundPoints1;
7767 Integer ScoreSummary_MatchPoints1;
7771 Real ScoreSummary_Gauge1;
7775 Ident ScoreSummary_Player2;
7779 Integer ScoreSummary_Points2;
7783 Integer ScoreSummary_RoundPoints2;
7787 Integer ScoreSummary_MatchPoints2;
7791 Real ScoreSummary_Gauge2;
7795 Boolean ScreenIn3dHideScoreSummary;
7799 Boolean ScreenIn3dHideVersus;
7803 Boolean DisplayControl_UseLiveCamera;
7807 Boolean DisplayControl_UseEsportsProgrammation;
7811 Integer CountdownEndTime;
7815 CUIConfig::EUIStatus UIStatus;
7819 CUIConfig::EHudVisibility LabelsVisibility;
7823 Boolean LabelsVisibility_SkipMarkersOnly;
7827 CUIConfig::ELabelsVisibility AlliesLabelsVisibility;
7831 CUIConfig::EVisibility AlliesLabelsShowGauges;
7835 CUIConfig::EVisibility AlliesLabelsShowNames;
7843 CUIConfig::ELabelsVisibility TeamLabelsVisibility;
7847 CUIConfig::EVisibility TeamLabelsShowGauges;
7851 CUIConfig::EVisibility TeamLabelsShowNames;
7855 CUIConfig::ELabelsVisibility OpposingTeamLabelsVisibility;
7859 CUIConfig::EVisibility OpposingTeamLabelsShowGauges;
7863 CUIConfig::EVisibility OpposingTeamLabelsShowNames;
7867 Boolean PlayerDisableFreeCam;
7871 Boolean ForceSpectator;
7875 Integer SpectatorForceCameraType;
7879 Real SpectatorCamAutoLatitude;
7883 Real SpectatorCamAutoLongitude;
7887 Real SpectatorCamAutoRadius;
7891 CUIConfig::EObserverMode SpectatorObserverMode;
7895 Void Spectator_SetAutoTarget_Clear();
7899 Void Spectator_SetAutoTarget_All();
7903 Void Spectator_SetAutoTarget_User(CUser User);
7907 Void Spectator_SetForcedTarget_Clear();
7911 Void Spectator_SetForcedTarget_AllPlayers();
7915 Void Spectator_SetForcedTarget_AllMap();
7919 Void Spectator_SetForcedTarget_Entity(CEntity Entity);
7923 Void Spectator_SetForcedTarget_Landmark(CMapLandmark Landmark);
7931 Void Spectator_SetForcedTarget_Clan(Integer ClanNumber);
7935 Void SendChat(Text Text);
7939 Void SendNotice(Text Text,CUIConfig::ENoticeLevel Level,CUser Avatar,CUIConfig::EAvatarVariant AvatarVariant,CUIConfig::EUISound Sound,Integer SoundVariant);
7943 Text GetLayerManialinkAction(CUILayer Layer);
7947 Void ClearLayerManialinkAction(CUILayer Layer);
7951 CUIConfigMarker AddMarker(Vec3 Position);
7955 CUIConfigMarker AddMarker(CEntity Entity);
7959 CUIConfigMarker AddMarker(CMapLandmark Landmark);
7963 CUIConfigMarker AddMarker(Ident GhostInstanceId);
7967 Void RemoveMarker(CUIConfigMarker Marker);
7971 Void ClearMarkers();
7975 Void QueueMessage(Integer Duration,Integer Priority,CUIConfig::EMessageDisplay Level,Text Message,CUser Avatar,CUIConfig::EAvatarVariant AvatarVariant,CUIConfig::EUISound Sound,Integer SoundVariant);
7979 Void QueueMessage(Integer Duration,Integer Priority,CUIConfig::EMessageDisplay Level,Text Message,CUIConfig::EUISound Sound,Integer SoundVariant);
7983 Void QueueMessage(Integer Duration,Integer Priority,CUIConfig::EMessageDisplay Level,Text Message);
7987 Void ClearMessages();
7988};
7989
7998class CPlayer : public CEntity {
7999public :
8003 CUser * const User;
8007 Integer const RequestedClan;
8011 Boolean const RequestsSpectate;
8016};
8017
8026class CScore : public CNod {
8027public :
8031 CUser * const User;
8035 Boolean const IsRegisteredForLadderMatch;
8039 Real const LadderScore;
8043 Integer LadderRankSortValue;
8047 Real LadderMatchScoreValue;
8051 Integer LadderClan;
8052};
8053
8062class CTeam : public CNod {
8063public :
8067 Text Name;
8071 Text ZonePath;
8075 Text City;
8079 Text EmblemUrl;
8083 Text PresentationManialinkUrl;
8087 Text ClubLinkUrl;
8091 Vec3 ColorPrimary;
8095 Vec3 ColorSecondary;
8099 Vec3 ColorUI;
8103 Text const ColorText;
8107 Text const ColorizedName;
8108};
8109
8117public :
8121 enum EType {
8122 Unknown,
8123 ClientConnected,
8124 ClientDisconnected,
8125 MapLoaded,
8126 BeginMatch,
8127 BeginRound,
8128 EndRound,
8129 EndMatch,
8130 MapUnloadRequested,
8131 MapUnloaded,
8132 ChatCommand,
8133 ChatMessage,
8134 ModeCallback,
8135 };
8139 enum EChatOption {
8140 Default,
8141 ToSpectatorCurrent,
8142 ToSpectatorAll,
8143 ToTeam,
8144 };
8148 CServerPluginEvent::EType const Type;
8152 CClient * const Client;
8156 Text const ChatText;
8160 CServerPluginEvent::EChatOption const ChatOption;
8164 Text const ChatCommandType;
8168 Array<Text> ChatCommandData;
8172 Text const ModeCallbackType;
8176 Array<Text> ModeCallbackData;
8180 Array<CScore* const > EndMatchScores;
8184 Array<Integer> EndMatchRanks;
8185};
8186
8190class CUIConfigMgr : public CNod {
8191public :
8195 Void ResetAll();
8199 CUIConfig * const UIAll;
8207 CUIConfig GetUI(CPlayer Player);
8211 CUIConfig GetUI(CUser User);
8215 CUIConfig GetUI(CClient Client);
8219 Array<CUILayer* const > UILayers;
8223 CUILayer UILayerCreate();
8227 Void UILayerDestroy(CUILayer Layer);
8231 Void UILayerDestroyAll();
8235 Array<CUILayer* const > UIReplayLayers;
8239 Integer UISequenceMaxDuration;
8243 Boolean HoldLoadingScreen;
8247 Array<CUIConfigEvent* const > PendingEvents;
8248};
8249
8253class CServerAdmin : public CNod {
8254public :
8258 enum ESpecMode {
8259 Selectable,
8260 SpectatorForced,
8261 PlayerForced,
8262 SpectatorSelectable,
8263 PlayerSelectable,
8264 };
8272 Void AutoTeamBalance();
8276 Boolean Kick(CUser User,Text Reason);
8280 Boolean Kick(CClient Client,Text Reason);
8284 Boolean Ban(CUser User,Text Reason);
8288 Boolean Ban(CClient Client,Text Reason);
8292 Boolean ForceSpectator(CUser User,CServerAdmin::ESpecMode SpecMode);
8296 Boolean ForceSpectator(CClient Client,CServerAdmin::ESpecMode SpecMode);
8300 Boolean ForcePlayerRequestedTeam(CUser User,Integer Team);
8312 Boolean IsDisableProfileSkins;
8320 Void DisconnectFakePlayer(Text Login);
8324 Void SetLobbyInfo(Boolean IsLobby,Integer LobbyPlayerCount,Integer LobbyMaxPlayerCount,Real LobbyPlayersLevel);
8328 Void SendToServerAfterMatch(Text ServerUrl);
8332 Void CustomizeQuitDialog(Text ManialinkPage,Text SendToServerUrl,Boolean ProposeAddToFavorites,Integer ForceDelay);
8340 Boolean const Authentication_GetTokenResponseReceived;
8344 Integer const Authentication_ErrorCode;
8348 Text const Authentication_Token;
8352 Void SetViewerCount(Integer ViewerCount);
8356 Text const PlayerRestrictions;
8357};
8358
8367class CXmlRpc : public CNod {
8368public :
8372 Array<CXmlRpcEvent* const > PendingEvents;
8376 Void SendCallback(Text Param1,Text Param2);
8380 Void SendCallbackArray(Text Type,Array<Text> Data);
8384 Void SendCallback_BeginRound();
8388 Void SendCallback_EndRound();
8389};
8390
8397class CTaskResult : public CNod {
8398public :
8430 Void Cancel();
8431};
8432
8436class CGhost : public CNod {
8437public :
8441 Ident const Id;
8457 Text CountryPath;
8461 Text OverrideZoneIcon_ImageUrl;
8465 Void SetProfileInfoFromUser(CUser User);
8466};
8467
8475public :
8479 CGhost * const Ghost;
8480};
8481
8486public :
8487};
8488
8493public :
8494};
8495
8499class CSkinInfo : public CNod {
8500public :
8504 Text const Name;
8508 Text const Type;
8512 Text const Url;
8513};
8514
8518class CAccountTrophyGain : public CNod {
8519public :
8523 Text const AccountId;
8527 Text const WebServicesUserId;
8531 Integer const T1Count;
8535 Integer const T2Count;
8539 Integer const T3Count;
8543 Integer const T4Count;
8547 Integer const T5Count;
8551 Integer const T6Count;
8555 Integer const T7Count;
8559 Integer const T8Count;
8563 Integer const T9Count;
8567 Integer const TimeStamp;
8568};
8569
8573class CTrophyAchievement : public CNod {
8574public :
8578 Text const TrophyAchievementId;
8582 Text const TrophyAchievementType;
8583};
8584
8592class CMode : public CNod {
8593public :
8597 enum EMedal {
8598 None,
8599 Finished,
8600 Bronze,
8601 Silver,
8602 Gold,
8603 Author,
8604 };
8608 Array<CTaskResult* const > TaskResults;
8612 Void TaskResult_Release(Ident TaskId);
8616 Text ModeStatusMessage;
8620 CTitle * const LoadedTitle;
8624 Text const ServerLogin;
8628 Text const ServerName;
8632 Text const ServerModeName;
8636 Text const MapName;
8640 CMap * const Map;
8644 Text const MapPlayerModelName;
8648 Boolean const HasPodium;
8660 Text NeutralEmblemUrl;
8664 Text const ForcedClubLinkUrl1;
8668 Text const ForcedClubLinkUrl2;
8672 Void TweakTeamColorsToAvoidHueOverlap();
8676 Text ClientManiaAppUrl;
8680 Integer const Now;
8684 Integer const Period;
8688 Boolean MatchEndRequested;
8692 Boolean const ServerShutdownRequested;
8696 Boolean const MapLoaded;
8700 Void RequestLoadMap();
8704 Void RequestUnloadMap();
8712 Integer NextMapIndex;
8716 CUIConfigMgr * const UIManager;
8720 Void Hud_Load(Text ModuleName);
8724 CModulePlaygroundHud * const Hud;
8728 Void PassOn(CUIConfigEvent EventToPassOn);
8732 Void Discard(CUIConfigEvent EventToDiscard);
8736 Void Ladder_OpenMatch_Request();
8740 Void Ladder_AddPlayer(CScore PlayerScore);
8744 Void Ladder_OpenMatch_BeginRequest();
8748 Void Ladder_OpenMatch_AddPlayer(CScore PlayerScore);
8752 Void Ladder_OpenMatch_EndRequest();
8756 Void Ladder_CloseMatchRequest();
8760 Void Ladder_CancelMatchRequest();
8764 Boolean const Ladder_RequestInProgress;
8768 Void Ladder_SetResultsVersion(Integer Version);
8772 Void Ladder_SetMatchMakingMatchId(Integer MatchId);
8776 Void Ladder_EnableChallengeMode(Boolean Enable);
8780 Void Trophy_CompetitionMatch_AddResult(Text WebServicesUserId,Integer MatchRank,Integer TrophyRanking);
8784 Void Trophy_CompetitionMatch_ClearResultList();
8788 CTaskResult_AccountTrophyGainList Trophy_CompetitionMatch_SendResultList(Text CompetitionName,Text CompetitionStage,Text CompetitionStageStep,Text CompetitionMatchInfo);
8792 Void Trophy_LiveTimeAttackAchievement_AddResult(Text WebServicesUserId,Integer MatchRank,Integer TrophyRanking);
8796 Void Trophy_LiveTimeAttackAchievement_ClearResultList();
8800 CTaskResult_AccountTrophyGainList Trophy_LiveTimeAttackAchievement_SendResultList(Integer Duration);
8804 CServerAdmin * const ServerAdmin;
8808 Void AutoTeamBalance();
8812 Void Solo_SetNewRecord(CScore PlayerScore,CMode::EMedal PlayerScore);
8816 Boolean const Solo_NewRecordSequenceInProgress;
8820 CXmlRpc * const XmlRpc;
8824 CParsingManager * const Xml;
8828 CHttpManager * const Http;
8840 CScoreMgr * const ScoreMgr;
8844 CSystemPlatform * const System;
8848 CUserV2Manager * const UserMgr;
8852 Integer Synchro_AddBarrier();
8856 Boolean Synchro_BarrierReached(Integer Barrier);
8860 Boolean Users_AreAllies(CUser User1,CUser User2);
8864 Void Users_RequestSwitchToSpectator(CUser User);
8868 CUser Users_CreateFake(Text NickName,Integer RequestedTeam);
8872 Void Users_DestroyFake(CUser User);
8876 Void Users_SetNbFakeUsers(Integer NbTeam1,Integer NbTeam2);
8880 Void Users_DestroyAllFakes();
8884 Void ItemList_Begin();
8888 Boolean ItemList_Begin();
8892 Ident ItemList_Add(Text ModelName);
8896 Ident ItemList_AddWithSkin(Text ModelName,Text SkinNameOrUrl);
8900 Ident ItemList_AddWithSkin(Text ModelName,Text SkinNameOrUrl,Text SkinOptions);
8904 Void ItemList_End();
8908 Void DemoToken_StartUsingToken();
8912 Void DemoToken_StopUsingToken();
8916 Void DemoToken_GetAndUseToken(CUser User);
8920 Void ActionList_Begin();
8924 Boolean ActionList_Begin();
8928 Ident ActionList_Add(Text ActionName);
8932 Void ActionList_End();
8936 Boolean UseMinimap;
8940 Boolean Replay_AutoStart;
8944 Void Replay_Start();
8948 Void Replay_Stop();
8952 CModeTurretManager * const TurretsManager;
8956 CModeVehicleManager * const VehiclesManager;
8960 CActionManager * const ActionsManager;
8964 Void Activity_Match_Create_Begin(Text ActivityId);
8968 Void Activity_Match_Create_AddPlayer(Text WebServicesUserId,Text TeamName);
8972 Void Activity_Match_Create_AddTeam(Text TeamName);
8976 Void Activity_Match_Create_End();
8980 Void Activity_Match_ReportResult_Begin();
8984 Void Activity_Match_ReportResult_SetPlayerResult(Text WebServicesUserId,Integer Rank,Integer Score);
8988 Void Activity_Match_ReportResult_SetTeamResult(Text TeamName,Integer Rank,Integer Score);
8992 Void Activity_Match_ReportResult_End();
8996 Boolean EnableGhostRecording;
9000 Array<CGhost* const > Ghosts;
9004 Void Ghost_Release(Ident GhostId);
9008 Void GhostDriver_Playlist_Clear(CPlayer Player);
9012 Void GhostDriver_Playlist_Add(CPlayer Player,CGhost Ghost);
9016 Void GhostDriver_UploadLimits_Begin();
9020 Void GhostDriver_UploadLimits_AddLevel(Integer TeamLevel);
9024 CWebServicesTaskResult_GhostDriver_UploadLimits GhostDriver_UploadLimits_End();
9028 Void GhostDriver_Upload_Begin(Integer TeamLevel);
9032 Void GhostDriver_Upload_TeamMember_Begin();
9036 Void GhostDriver_Upload_AddGhost(CGhost Ghost);
9040 Void GhostDriver_Upload_TeamMember_End();
9044 CTaskResult GhostDriver_Upload_End();
9048 Void GhostDriver_Download_Begin();
9052 Void GhostDriver_Download_AddRange(Integer TeamLevelMin,Integer TeamLevelMax,Integer Count);
9056 CWebServicesTaskResult_GhostDriver_Download GhostDriver_Download_End();
9060 CTaskResult_MapRecordList MapRecord_GetListByMapAndPlayerList(Ident UserId,Array<Text> WebServicesUserIdList,Text MapUid,Text ScopeType,Text ScopeId,Text GameMode,Text GameModeCustomData);
9064 Void GameScene_ResetAll();
9068 Text Dbg_DumpDeclareForVariables(CNod Nod,Boolean StatsOnly);
9072 Integer const UiUpdatePeriod;
9073};
9074
9083class CSmPlayer : public CPlayer {
9084public :
9088 enum ESpawnStatus {
9089 NotSpawned,
9090 Spawning,
9091 Spawned,
9092 };
9096 CSmScore * const Score;
9100 CSmPlayer::ESpawnStatus const SpawnStatus;
9104 Integer const StartTime;
9108 Integer EndTime;
9112 Array<Integer> RaceWaypointTimes;
9120 Array<Integer> CurrentLapWaypointTimes;
9124 Array<Integer> PreviousLapWaypointTimes;
9128 Integer const CurrentLapNumber;
9132 Integer const CurrentRaceTime;
9136 Integer const CurrentLapTime;
9140 Integer const CurrentRaceRespawns;
9144 Integer const CurrentLapRespawns;
9152 Integer ActionWheelSelectedSlotIndex;
9156 Integer Armor;
9160 Integer ArmorMax;
9164 Integer ArmorGain;
9168 Integer ArmorReplenishGain;
9176 Integer Stamina;
9180 Integer const StaminaMaxValue;
9204 Boolean AllowWallJump;
9208 Boolean AllowProgressiveJump;
9212 Boolean UseAlternateWeaponVisual;
9216 Ident ForceModelId;
9220 Boolean IsHighlighted;
9228 Vec3 ForceColor;
9236 Text Dossard_Number;
9240 Text Dossard_Trigram;
9244 Vec3 Dossard_Color;
9252 Real ForceLinearHue;
9256 Boolean ForceLightTrail;
9260 Boolean HasShield;
9264 Boolean const IsInVehicle;
9268 Boolean IsStuck;
9276 Integer const CurrentClan;
9280 Integer const IdleDuration;
9284 Boolean const IsEntityStateAvailable;
9288 Vec3 const Position;
9292 Real const AimYaw;
9296 Real const AimPitch;
9300 Real const AimRoll;
9304 Vec3 const AimDirection;
9308 Vec3 const UpDirection;
9312 Vec3 const LeftDirection;
9316 Vec3 const Velocity;
9320 Real const Speed;
9324 Boolean const IsUnderground;
9328 Boolean const IsTouchingGround;
9332 Boolean const IsInAir;
9336 Boolean const IsInWater;
9340 Boolean const IsInOffZone;
9344 Boolean const IsOnTech;
9348 Boolean const IsOnTechGround;
9352 Boolean const IsOnTechLaser;
9356 Boolean const IsOnTechArrow;
9360 Boolean const IsOnTechNucleus;
9364 Boolean const IsOnTechArmor;
9368 Boolean const IsOnTechSafeZone;
9372 Boolean const IsOnTechTeleport;
9376 Boolean const IsOnTechNoWeapon;
9380 Boolean const IsPowerJumpActivable;
9384 Boolean const IsTeleportActivable;
9388 Boolean const IsAttractorActivable;
9392 Integer const NbActiveAttractors;
9396 Boolean const IsCapturing;
9400 CSmMapLandmark * const CapturedLandmark;
9408 CModeVehicle * const Vehicle;
9412 Boolean const IsFakePlayer;
9416 Boolean const IsBot;
9424 Boolean TrustClientSimu;
9428 CSmPlayerDriver * const Driver;
9448 Real const Upwardness;
9452 Real const Distance;
9456 Integer const DisplaySpeed;
9460 Real const InputSteer;
9464 Real const InputGasPedal;
9468 Boolean const InputIsBraking;
9472 Real const EngineRpm;
9476 Integer const EngineCurGear;
9480 Real const EngineTurboRatio;
9484 Integer const WheelsContactCount;
9488 Integer const WheelsSkiddingCount;
9492 Integer const FlyingDuration;
9496 Integer const SkiddingDuration;
9500 Real const SkiddingDistance;
9504 Real const FlyingDistance;
9512 Integer const HandicapNoGasDuration;
9516 Integer const HandicapForceGasDuration;
9520 Integer const HandicapNoBrakesDuration;
9524 Integer const HandicapNoSteeringDuration;
9528 Integer const HandicapNoGripDuration;
9529};
9530
9537class CSmModeEvent : public CBaseEvent {
9538public :
9542 enum EType {
9543 Unknown,
9544 OnShoot,
9545 OnHit,
9546 OnNearMiss,
9547 OnArmorEmpty,
9548 OnCapture,
9549 OnShotDeny,
9550 OnFallDamage,
9551 OnCommand,
9552 OnPlayerAdded,
9553 OnPlayerRemoved,
9554 OnPlayerRequestRespawn,
9555 OnActionCustomEvent,
9556 OnActionEvent,
9557 OnPlayerTouchesObject,
9558 OnPlayerThrowsObject,
9559 OnPlayerTriggersSector,
9560 OnPlayerTriggersWaypoint,
9561 OnPlayerRequestActionChange,
9562 OnVehicleArmorEmpty,
9563 OnVehicleCollision,
9564 OnVehicleVsVehicleCollision,
9565 OnPlayerRequestItemInteraction,
9566 OnStuntFigure,
9567 };
9571 enum EActionSlot {
9572 Slot_A,
9573 Slot_B,
9574 Slot_C,
9575 Slot_D,
9576 Slot_E,
9577 Slot_F,
9578 Slot_G,
9579 Slot_H,
9580 };
9584 enum EActionInput {
9585 Weapon,
9586 Secondary,
9587 Movement,
9588 QuickAccess1,
9589 QuickAccess2,
9590 QuickAccess3,
9591 QuickAccess4,
9592 QuickAccess5,
9593 QuickAccess6,
9594 QuickAccess7,
9595 QuickAccess8,
9596 QuickAccess9,
9597 QuickAccess0,
9598 Consumable1,
9599 Consumable2,
9600 None,
9601 };
9605 CSmModeEvent::EType const Type;
9609 CSmPlayer * const Player;
9613 Integer Damage;
9617 Integer const VictimShield;
9621 CEntity * const VictimEntity;
9625 Integer ShooterPoints;
9629 CEntity * const ShooterEntity;
9633 Integer const ShooterClan;
9637 Real const Height;
9641 Integer const UserData;
9645 Vec3 const ItemPosition;
9649 Real const MissDist;
9653 Integer const WeaponNum;
9657 Boolean const ShooterUsedAction;
9661 Integer const ShooterWeaponNum;
9665 CSmModeEvent::EActionSlot const ShooterActionSlot;
9669 Text const ShooterActionId;
9673 Boolean const VictimUsedAction;
9677 Integer const VictimWeaponNum;
9681 CSmModeEvent::EActionSlot const VictimActionSlot;
9685 Text const VictimActionId;
9689 CSmModeEvent::EActionSlot const ActionSlot;
9693 CSmModeEvent::EActionInput const ActionInput;
9697 Text const ActionId;
9701 Text const Param1;
9705 Array<Text> Param2;
9709 CSmObject * const Object;
9713 Integer const WaypointTime;
9717 Integer const WaypointLapTime;
9721 Boolean const IsFinish;
9725 Boolean const IsNewLap;
9729 CSmMapLandmark * const Landmark;
9733 CUser * const User;
9737 Boolean const PlayerWasSpawned;
9741 Boolean const PlayerWasDisconnected;
9745 Boolean const PlayerWasInLadderMatch;
9749 Vec3 const PlayerLastPosition;
9753 Vec3 const PlayerLastAimDirection;
9757 Boolean const GiveUp;
9761 Boolean const RegressRespawn;
9765 Text const CommandName;
9769 Boolean const CommandValueBoolean;
9773 Integer const CommandValueInteger;
9777 Real const CommandValueReal;
9781 Text const CommandValueText;
9785 Vec2 const CommandValueVec2;
9789 Vec3 const CommandValueVec3;
9793 Int2 const CommandValueInt2;
9797 Int3 const CommandValueInt3;
9801 Integer const ActionChange;
9805 CStuntFigure * const StuntFigure;
9806};
9807
9811class CSmMapBase : public CNod {
9812public :
9816 Integer Clan;
9820 Boolean IsActive;
9824 Integer const NumberOfCollectors;
9825};
9826
9835public :
9839 CSmMapBase * const Base;
9843 CSmMapGate * const Gate;
9847 CSmMapGauge * const Gauge;
9848};
9849
9858class CSmScore : public CScore {
9859public :
9863 Integer TeamNum;
9867 Integer Points;
9871 Integer RoundPoints;
9875 Integer NbRespawnsRequested;
9879 Integer const NbEliminationsInflicted;
9883 Integer const NbEliminationsTaken;
9887 Integer const DamageInflicted;
9891 Integer const DamageTaken;
9895 Array<Integer> BestRaceTimes;
9899 Array<Integer> PrevRaceTimes;
9903 Array<Integer> BestLapTimes;
9907 Array<Integer> PrevLapTimes;
9911 Integer BestRaceNbRespawns;
9915 Integer PrevRaceNbRespawns;
9916};
9917
9921class CMapSpawn : public CNod {
9922public :
9923};
9924
9931class CModeTurret : public CEntity {
9932public :
9936 Integer Armor;
9940 Integer ArmorMax;
9944 CPlayer * const Owner;
9945};
9946
9953class CModeVehicle : public CEntity {
9954public :
9958 Integer Armor;
9962 Integer ArmorMax;
9966 Vec3 const Position;
9970 Real const Pitch;
9974 Real const Roll;
9978 Vec3 const Left;
9982 Vec3 const Up;
9986 Vec3 const Dir;
9990 Vec3 const Velocity;
9994 Integer Clan;
9998 Real AccelCoef;
10002 Real const AccelInput;
10006 Void SetEngineActivated(Boolean IsActivated);
10007};
10008
10012class CMapBotPath : public CNod {
10013public :
10017 Integer const Clan;
10021 Array<Vec3> Path;
10025 Boolean const IsFlying;
10029 Ident const BotModelId;
10030};
10031
10035class CMapBotSpawn : public CNod {
10036public :
10040 Boolean const IsFlying;
10044 Ident const BotModelId;
10045};
10046
10050class CEntity : public CNod {
10051public :
10056};
10057
10061class CMapWaypoint : public CNod {
10062public :
10066 Boolean const IsFinish;
10070 Boolean const IsMultiLap;
10071};
10072
10079class CSmObject : public CEntity {
10080public :
10084 enum EStatus {
10085 OnPlayer,
10086 OnAnchor,
10087 InWorld,
10088 Unspawned,
10089 };
10093 CSmObject::EStatus const Status;
10097 Ident const ModelId;
10101 Void SetAnchor(CMapObjectAnchor ObjectAnchor);
10105 Void SetPlayer(CSmPlayer Player);
10109 Void SetPosition(Vec3 Position);
10113 Void SetPositionAndVel(Vec3 Position,Vec3 Vel);
10117 Void SetUnspawned();
10125 CSmMapLandmark * const AnchorLandmark;
10129 Vec3 const Position;
10133 Vec3 const Vel;
10137 Integer MachineState;
10141 Boolean Throwable;
10145 Ident const ThrowLatestPlayerId;
10146};
10147
10151class CGhostManager : public CNod {
10152public :
10156 Ident Ghost_Add(CGhost Ghost);
10160 Ident Ghost_Add(CGhost Ghost,Boolean IsGhostLayer);
10164 Ident Ghost_Add(CGhost Ghost,Boolean IsGhostLayer,Integer TimeOffset);
10168 Ident Ghost_AddWaypointSynced(CGhost Ghost,Boolean IsGhostLayer);
10172 Boolean Ghost_IsReplayOver(Ident GhostInstanceId);
10176 Boolean Ghost_IsVisible(Ident GhostInstanceId);
10180 Void Ghost_Remove(Ident GhostInstanceId);
10184 Void Ghost_RemoveAll();
10188 Void Ghost_SetDossard(Ident GhostInstanceId,Text Dossard);
10192 Void Ghost_SetDossard(Ident GhostInstanceId,Text Dossard,Vec3 Color);
10193};
10194
10203public :
10207 enum ValidationStatus {
10208 NotValidable,
10209 Validable,
10210 Validated,
10211 };
10215 Boolean CustomEditAnchorData;
10219 Void ClearMapMetadata();
10223 CMapType::ValidationStatus ValidationStatus;
10227 Text ValidabilityRequirementsMessage;
10231 Boolean ValidationEndRequested;
10235 Boolean ValidationEndNoConfirm;
10239 Void RequestEnterPlayground();
10243 Void RequestLeavePlayground();
10247 Boolean const IsSwitchedToPlayground;
10251 CUIConfigMgr * const UIManager;
10256};
10257
10261class CAction : public CNod {
10262public :
10263};
10264
10272public :
10276 enum EType {
10277 OnHitPlayer,
10278 OnProjectileEnd,
10279 OnProjectileDestroyed,
10280 OnHitObject,
10281 OnHitShield,
10282 OnHitVehicle,
10283 OnShieldEnd,
10284 OnHitTurret,
10285 OnInputChange,
10286 OnFocusedScroll,
10287 };
10291 enum EInputChange {
10292 IsActive,
10293 Focused_Main,
10294 Focused_Secondary,
10295 Focused_QuickAccess1,
10296 Focused_QuickAccess2,
10297 Focused_QuickAccess3,
10298 Focused_QuickAccess4,
10299 Focused_QuickAccess5,
10300 Focused_QuickAccess6,
10301 Focused_QuickAccess7,
10302 Focused_QuickAccess8,
10303 Focused_QuickAccess9,
10304 Focused_QuickAccess0,
10305 Focused_Consumable1,
10306 Focused_Consumable2,
10307 };
10311 CSmActionEvent::EType const Type;
10315 Ident const ProjectileModelId;
10319 Integer const ProjectileStartDate;
10323 Integer const Damage;
10327 Integer const ContextId;
10331 Vec3 const Position;
10335 Vec3 const Direction;
10339 Vec3 const Normal;
10343 CEntity * const Victim;
10347 Integer const Shield;
10351 CSmActionEvent::EInputChange const Input;
10355 Integer const ScrollDelta;
10356};
10357
10366public :
10370 enum EInGameMenuResult {
10371 Resume,
10372 Quit,
10373 NormalMenu,
10374 AdvancedMenu,
10375 ServerSettings,
10376 };
10380 enum EUISound {
10381 Default,
10382 Silence,
10383 StartMatch,
10384 EndMatch,
10385 StartRound,
10386 EndRound,
10387 PhaseChange,
10388 TieBreakPoint,
10389 TiePoint,
10390 VictoryPoint,
10391 Capture,
10392 TimeOut,
10393 Notice,
10394 Warning,
10395 PlayerEliminated,
10396 PlayerHit,
10397 Checkpoint,
10398 Finish,
10399 Record,
10400 ScoreProgress,
10401 RankChange,
10402 Bonus,
10403 FirstHit,
10404 Combo,
10405 PlayersRemaining,
10406 Custom1,
10407 Custom2,
10408 Custom3,
10409 Custom4,
10410 };
10414 Integer GameTime;
10418 CPlaygroundClient * const Playground;
10422 CUIConfig const * const UI;
10438 Boolean UseClans;
10442 Boolean UseForcedClans;
10450 CMap * const Map;
10454 Void ShowCurChallengeCard();
10458 Void ShowModeHelp();
10462 Void CopyServerLinkToClipBoard();
10466 Void JoinTeam1();
10470 Void JoinTeam2();
10486 Void ShowProfile(Text Player);
10490 Void ShowInGameMenu();
10494 Void CloseInGameMenu(CMlScriptIngame::EInGameMenuResult Result);
10498 Void CloseScoresTable();
10502 Boolean IsInGameMenuDisplayed;
10506 Text CurrentServerLogin;
10510 Text CurrentServerName;
10514 Text CurrentServerDesc;
10518 Text CurrentServerJoinLink;
10522 Text CurrentServerModeName;
10526 Integer SplitScreenNum;
10530 Integer SplitScreenCount;
10534 Boolean SplitScreenIsHorizontal;
10538 Void PlayUiSound(CMlScriptIngame::EUISound Sound,Integer SoundVariant,Real Volume);
10539};
10540
10545public :
10549 Integer GameTime;
10565 Boolean UseClans;
10569 Boolean UseForcedClans;
10573 CMap const * const Map;
10581 Boolean IsInGameMenuDisplayed;
10585 Text CurrentServerLogin;
10589 Text CurrentServerName;
10593 Text CurrentServerDesc;
10597 Text CurrentServerJoinLink;
10601 Text CurrentServerModeName;
10605 Integer SplitScreenNum;
10609 Integer SplitScreenCount;
10613 Boolean SplitScreenIsHorizontal;
10614};
10615
10619class CGameUserVoiceChat : public CNod {
10620public :
10624 enum EMuteSetting {
10625 Muted,
10626 NotMuted,
10627 };
10631 CGameUserVoiceChat::EMuteSetting MuteSetting;
10635 Boolean const IsLocal;
10639 Boolean const IsMuted;
10643 Boolean const MuteChangePending;
10647 Boolean const IsSpeaking;
10651 Boolean const IsConnected;
10655 Boolean const Supported;
10659 CUser * const MatchingPlayerInfo;
10660};
10661
10666public :
10667};
10668
10673public :
10674};
10675
10679class CAudioSettings : public CNod {
10680public :
10684 Integer DirtyCounter;
10688 Array<Text> Devices;
10692 Text Device_Current;
10696 Text Device_NextApply;
10700 Integer const VoiceChat_Devices_DirtyCounter;
10704 Array<Text> VoiceChat_Devices_In;
10708 Array<Text> VoiceChat_Devices_Out;
10712 Text const VoiceChat_Device_In_Current;
10716 Text const VoiceChat_Device_Out_Current;
10720 Text VoiceChat_Device_In_NextApply;
10724 Text VoiceChat_Device_Out_NextApply;
10728 Real VoiceChat_SpeakerVolume;
10732 NSystemConfig::EVoiceDetectionMode VoiceChat_VoiceDetection_Mode;
10737};
10738
10743public :
10747 CUILayer * const ComponentLayer;
10751 Void Hide();
10755 Void Show();
10756};
10757
10761class CModulePlayground : public CNod {
10762public :
10766 Void Hide();
10770 Void Hide(CUIConfig UIConfig);
10774 Void Show();
10778 Void Show(CUIConfig UIConfig);
10782 Boolean IsVisible(CUIConfig UIConfig);
10783};
10784
10788class CModuleMenuPage : public CNod {
10789public :
10793 Text const Name;
10798};
10799
10807public :
10811 enum EModuleType {
10812 Undefined,
10813 Hud,
10814 Inventory,
10815 Store,
10816 ScoresTable,
10817 Equipment,
10818 MenuBase,
10819 MenuPage,
10820 Chrono,
10821 SpeedMeter,
10822 PlayerState,
10823 TeamState,
10824 };
10828 Void NewModule(CEditorModule::EModuleType ModuleType);
10832 Void OpenModule(Text Path);
10836 Void Save();
10840 Void SaveAs(Text Path);
10844 Void SaveCopyAs(Text Path);
10848 Void ForceExit();
10852 Void SetPreviewBackground(Text Url);
10856 Void ReloadPreview();
10860 CModuleMenuModel * const EditedMenu;
10864 CModuleMenuPageModel * const EditedMenuPage;
10868 CModulePlaygroundHudModel * const EditedPlaygroundHud;
10872 Void EditedPlaygroundHud_SetPreviewContext(Ident ContextId);
10876 Void FileBrowser_Open();
10880 Void FileBrowser_Save();
10884 Boolean const FileBrowser_IsRunning;
10888 Text const FileBrowser_FilePath;
10896 Boolean IsPreviewMode;
10897};
10898
10906public :
10910 enum EEdgesDisplay {
10911 Any,
10912 Borders,
10913 None,
10914 };
10918 enum EEdgesConstraint {
10919 Any,
10920 Adjacent,
10921 Closed,
10922 };
10926 enum EElemType {
10927 Vertex,
10928 Edge,
10929 Face,
10930 EVoxel,
10931 Any,
10932 };
10936 enum EInteraction {
10937 Creation,
10938 Pick,
10939 PickJoint,
10940 VoxelPickDrag_Base,
10941 VoxelPickDrag_Creation,
10942 VoxelPickDrag_Delete,
10943 VoxelPickDrag_Select,
10944 VoxelPickDrag_Pick,
10945 VoxelPickDrag_SelectTranslation,
10946 VoxelPickDrag_SelectRotation,
10947 VoxelPickDrag_Paste,
10948 Selection,
10949 Translation,
10950 PickTranslation,
10951 ExtrudeTranslation,
10952 Rotation,
10953 PickRotation,
10954 Scale,
10955 Curve2D,
10956 Merge,
10957 Split,
10958 Mirror,
10959 Paste,
10960 PasteMaterial,
10961 BlocTransformation,
10962 None,
10963 };
10967 enum ETexCoordLayer {
10968 Lightmap,
10969 };
10973 enum EMaterialFilterCriterion {
10974 IsAutomatic,
10975 IsBadForHorizontalFaces,
10976 IsBadForVerticalFaces,
10977 };
10981 enum EFilterKind {
10982 NoFilter,
10983 PassIfMatches,
10984 CutIfMatches,
10985 };
10989 enum EUVEditorMode {
10990 UV,
10991 Atlas_ApplyOnClic,
10992 Atlas_SelectOnClic,
10993 };
10997 enum EUVEditorProjectionType {
10998 Planar,
10999 Curve2D,
11000 Cylindrical2D,
11001 Cubic,
11002 Polyedric,
11003 Cylindrical,
11004 ApplyOnlyMaterial,
11005 };
11009 enum ELayerType {
11010 AddGeometry,
11011 SubdivideSmooth,
11012 Translation,
11013 Rotation,
11014 Scale,
11015 Mirror,
11016 MoveToGround,
11017 Extrude,
11018 Subdivide,
11019 Chaos,
11020 Smooth,
11021 BorderTransition,
11022 BlocTransfo,
11023 Voxels,
11024 TriggerShape,
11025 RespawnPos,
11026 Sector,
11027 Light,
11028 LightModel,
11029 WaterShape,
11030 None,
11031 };
11035 enum ETitleCoreType {
11036 TrackMania,
11037 ShootMania,
11038 };
11042 Boolean GoToMaterialEditor;
11046 Boolean IsCreateMaterial;
11050 Integer Layers_GetCount();
11054 Ident Layers_GetLayerIdFromIndex(Integer LayerIndex);
11058 Text Layers_GetLayerNameFromIndex(Integer LayerIndex);
11062 CEditorMesh::ELayerType Layers_GetLayerTypeFromIndex(Integer LayerIndex);
11066 Boolean Layers_GetLayerGeneratableFromIndex(Integer LayerIndex);
11070 Void Layers_SetLayerGeneratableFromIndex(Integer LayerIndex,Boolean LayerGeneratability);
11074 Void Layers_AddLayer(CEditorMesh::ELayerType LayerType);
11078 Ident Layers_GetLayerIdSelected();
11082 Void Layers_SetLayerIdSelected(Ident LayerId);
11086 CEditorMesh::ELayerType Layers_GetLayerSelectedType();
11090 Integer Layers_GetLayerSelectedIndex();
11094 CEditorMesh::ELayerType Layers_GetEditedLayerType();
11098 Text Layers_GetLayerSelectedName();
11102 Void Layers_EditMask(Integer LayerIndex);
11106 Void Layers_EditMaskValidate(Integer LayerIndex);
11110 Void Layers_MoveSelectedLayerUp();
11114 Void Layers_MoveSelectedLayerDown();
11118 Void Layers_EditSelectedLayer(Boolean RegenerateSolid);
11122 Void Layers_CloseEditSelectedLayer();
11126 Void Layers_DeleteSelectedLayer();
11130 Integer Transitions_GetCount();
11134 Void Transitions_AddTransition(Text TransitionName,Integer TransitionPosition,Real TransitionSize);
11138 Void Transitions_DeleteCurrentTransition();
11142 Integer Transitions_GetTransitionSelectedIndex();
11146 Void Transitions_SetTransitionSelectedIndex(Integer TransitionIndex);
11150 Integer Transitions_GetTransitionCurrentPage();
11154 Void Transitions_SetTransitionCurrentPage(Integer TransitionCurrentPage);
11158 Text Transitions_GetTransitionNameFromIndex(Integer TransitionIndex);
11162 Void Transitions_SetTransitionNameFromIndex(Integer TransitionIndex,Real TransitionName);
11166 Boolean Transitions_GetTransitionVisibilityFromIndex(Integer TransitionIndex);
11170 Void Transitions_SetTransitionVisibilityFromIndex(Integer TransitionIndex,Boolean TransitionVisibility);
11174 Real Transitions_GetTransitionSizeFromIndex(Integer TransitionIndex);
11178 Void Transitions_SetTransitionSizeFromIndex(Integer TransitionIndex,Real TransitionSize);
11182 Integer Transitions_GetTransitionPositionFromIndex(Integer TransitionIndex);
11186 Void Transitions_SetTransitionPositionFromIndex(Integer TransitionIndex,Integer TransitionPosition);
11190 Boolean IsEditingLayer;
11194 Integer SubdivideSmooth_NbSteps;
11198 Real LayerValueAxisX;
11202 Real LayerValueAxisY;
11206 Real LayerValueAxisZ;
11210 Boolean LayerIndep;
11214 Real LayerValueParam1;
11218 Real LayerValueParam2;
11222 Real LayerValueParam3;
11226 Real LayerValueParam4;
11230 Boolean LayerIndexAxisX;
11234 Boolean LayerIndexAxisY;
11238 Boolean LayerIndexAxisZ;
11242 Boolean Layer_IsVisible;
11246 Boolean Layer_IsCollidable;
11250 Text LayerName;
11254 Boolean LayerGeneratable;
11258 Boolean AddTransitionInProgress;
11262 Text NewTransitionName;
11266 Integer NewTransitionPosition;
11270 Real NewTransitionSize;
11274 Integer RotateAxis;
11278 Boolean const Tmp_UseParts;
11282 Boolean const IsDebug;
11286 Boolean CameraEatingInputsScript;
11290 Integer const VertexCount;
11294 Integer const EdgeCount;
11298 Integer const FaceCount;
11302 Void EditionBox_SetStep(Real Step);
11306 Boolean const EditionBox_IsPlaneOriented;
11310 Real const Scale;
11314 Real const Step;
11318 Real const Size;
11322 Integer const RotationStep;
11326 Real const RotationValue;
11330 Real const ScalingStep;
11334 Real const ScalingRatio;
11338 Boolean DisplayVertices;
11342 Boolean DisplayFaces;
11346 Boolean DisplayJoints;
11350 CEditorMesh::EEdgesDisplay DisplayEdges;
11354 Void EditedMesh_Clear();
11358 Void EditedMesh_Simplify();
11362 Void EditedMesh_SimplifySelection();
11366 Void EditedMesh_Lod(Real FacesRatio);
11370 Void UVUnwrap(Ident SetHandle,CEditorMesh::ETexCoordLayer ETexCoordLayer);
11374 Void Undo();
11378 Void Redo();
11382 Void SwitchPlane();
11386 Void GridSnap_SetActive(Boolean IsActive);
11390 Boolean const GridSnap_IsActive;
11394 Vec3 PickInfo_GetNormal();
11398 Vec3 PickInfo_GetPosition();
11402 Ident PickInfo_GetAnchorId();
11406 Real PickInfo_GetEdgeLength();
11410 Vec3 PickInfo_GetNextVertexPosition();
11414 Ident PickInfo_GetMaterial();
11418 Text PickInfo_GetError();
11422 Void Part_SetAnchorPos(Vec3 Position);
11426 Void Part_SetIsJoint(Boolean IsJoint);
11430 Void Part_ClearAnchor();
11434 Void Joint_Add(Vec3 Position);
11438 Void Joint_Link(Ident IdChild,Ident IdParent);
11442 Void Anchor_Remove(Ident Id);
11446 Boolean IsUsingPhysicMatLib;
11450 Integer const MaterialGameplayIdNumber;
11454 Integer const MaterialsUpdateId;
11458 Array<Ident> MaterialIds;
11462 Array<Ident> MaterialPhysicsIds;
11466 Array<Ident> MaterialDynaIds;
11470 Array<Text> MaterialNames;
11474 Array<Text> MaterialPhysicsNames;
11478 Array<Integer> MaterialPhysics_GameplayRemap;
11482 Array<Text> MaterialDynaNames;
11486 Array<Vec3> MaterialLastUsedColors;
11490 Array<Vec3> MaterialBaseColors;
11494 Vec3 CurrentColorForSpecialMaterials;
11498 Ident Material_GetMaterialIdSelected();
11502 Void Material_SetMaterialIdSelected(Ident MaterialEditorId);
11506 Ident MaterialDyna_GetMaterialIdSelected();
11510 Void MaterialDyna_SetMaterialIdSelected(Ident DynaMaterialType);
11514 Integer Material_GetSubTexIndexSelected();
11518 Integer Material_MaterialLibGetCount();
11522 Void Material_SetDefault(Ident MaterialId);
11526 Ident Material_GetDefault();
11530 Ident MaterialPhysic_GetDefault();
11534 Integer MaterialPhysic_GetIndex();
11538 Integer MaterialPhysic_GetGameplayId(Ident MaterialId);
11542 CImage MaterialPhysic_GetNextBitmap();
11546 Ident MaterialDyna_GetDefault();
11550 Void MaterialDyna_SetDefault(Ident MaterialId);
11554 CImage Material_GetBitmapBase(Ident MaterialId);
11558 CImage Material_GetBitmap(Ident MaterialId);
11562 CImage MaterialDyna_GetBitmap(Ident MaterialId);
11566 Boolean Material_IsSpecialColored(Ident MaterialId);
11570 Boolean Material_MatchesCriterion(Ident MaterialId,CEditorMesh::EMaterialFilterCriterion ResultSetHandle);
11574 Void Material_SetFilter(CEditorMesh::EMaterialFilterCriterion Criterion,CEditorMesh::EFilterKind FilterKind);
11578 CEditorMesh::EFilterKind Material_GetFilter(CEditorMesh::EMaterialFilterCriterion Criterion);
11582 Void Material_ClearFilters();
11586 Void Material_UVEditor_SetIsRotation(Boolean IsRotation);
11590 Void Material_UVEditor_SetIsScale(Boolean IsScale);
11594 Void Material_UVEditor_SetIsScale1D(Boolean IsScale);
11598 Void Material_UVEditor_Open(Ident MaterialId,CMlQuad LocationQuad);
11602 Void Material_UVEditor_Close();
11606 Boolean Material_UVEditor_IsRunning();
11610 Void Material_UVEditor_SetMode(CEditorMesh::EUVEditorMode Mode);
11614 CEditorMesh::EUVEditorMode Material_UVEditor_GetMode();
11618 Void Material_UVEditor_SetProjectionType(CEditorMesh::EUVEditorProjectionType ProjectionType);
11622 Boolean Material_IsGameMaterial();
11626 Boolean Material_IsCustomLinkFull(Ident MaterialId);
11630 Void Material_UVEditor_Apply();
11634 Void Material_CopyMaterial(Ident SetHandle);
11638 Void Material_PasteMaterial(Ident SetHandle);
11642 Integer const Material_Atlas_SelectedSubTexIndex;
11646 CEditorMesh::EInteraction const CurrentInteraction;
11650 Void Interaction_Close();
11654 Void Interaction_SetPreview(Ident SetToPreview);
11658 Integer const CreationElemsCount;
11662 Boolean Interaction_StartCreation(Ident CreationSetHandle,CEditorMesh::EElemType ElemType,Ident SetToPickFromHandle);
11666 Void Interaction_Creation_GetElems(Ident ResultSetHandle);
11670 Void Interaction_Creation_ClearParams();
11674 Void Interaction_Creation_SetEdgesConstraint(CEditorMesh::EEdgesConstraint EdgesConstraint);
11678 Void Interaction_Creation_SetAutoMerge(Boolean AutoMerge);
11682 Boolean Interaction_StartPaste();
11686 Boolean Interaction_StartBlocTransformation(Ident TransformationSetHandle);
11690 Boolean Interaction_StartCurve2D(Ident BordersSetHandle);
11694 Void Interaction_CloseCurve2D(Boolean CanDoCurve2D);
11698 Boolean Interaction_StartPick(CEditorMesh::EElemType ElemType,Ident SetToPickFrom);
11702 Boolean Interaction_StartPickJoint();
11706 Boolean Interaction_StartVoxelPickDrag_Base(CEditorMesh::EElemType ElemType);
11710 Boolean Interaction_StartVoxelPickDrag_Creation();
11714 Boolean Interaction_StartVoxelPickDrag_Delete();
11718 Boolean Interaction_StartVoxelPickDrag_Select(Ident SelectionSetHandle);
11722 Void Interaction_CloseVoxelPickDrag_Select();
11726 Boolean Interaction_StartVoxelPickDrag_Pick();
11730 Void Interaction_CloseVoxelPickDrag_Pick();
11734 Boolean Interaction_StartVoxelPickDrag_SelectTranslation();
11738 Boolean Interaction_StartVoxelPickDrag_SelectRotation();
11742 Boolean Interaction_StartVoxelPickDrag_Paste();
11746 Void CutVoxels();
11750 Void CopyVoxels();
11754 Boolean Interaction_StartMerge(Ident MergeSetHandle);
11758 Boolean Interaction_StartMirror(Ident SetHandle);
11762 Void Interaction_Selection_ClearParams();
11766 Void Interaction_Selection_SetUseParts(Boolean UseParts);
11770 Void Interaction_Selection_SetCanEnterLeaf(Boolean CanEnterLeaf);
11774 Boolean Interaction_StartSelection(Ident SelectionSetHandle,CEditorMesh::EElemType ElemType,Ident SelectionSetToPickFrom,Boolean IsFromALayer,Boolean AllowDoubleClick);
11778 Void Interaction_CloseSelection();
11782 Boolean Interaction_StartTranslation(Ident TranslationSetHandle);
11786 Boolean Interaction_StartPickTranslation(Ident TranslationSetHandle);
11790 Boolean Interaction_StartRotation(Ident RotationSetHandle);
11794 Boolean Interaction_StartPickRotation(Ident RotationSetHandle);
11798 Void Interaction_Rotation_SetStep(Real RotationStep);
11802 Boolean Interaction_StartPickScale(Ident ScalingSetHandle);
11806 Void Interaction_Scale_SetStep(Real ScalingStep);
11810 Boolean Interaction_StartSplit();
11814 Void Display_HighlightSet(Ident SetHandle);
11818 Void Display_ClearHighlighting();
11822 Boolean const Display_HideElemsByDistance_IsActive;
11826 Integer Display_HideElemsByDistance_Distance;
11830 Real Display_HideElemsByDistance_Opacity;
11834 Void Display_HideElemsByDistance_Start(Ident SetHandle);
11838 Void Display_HideElemsByDistance_Stop();
11842 Void Display_HideMap();
11846 Void Display_ShowMap();
11850 Void MergeAllSuperposedElements(Ident SetHandle);
11854 Ident const SelectionSet;
11858 Void Selection_Undo();
11862 Void Selection_Redo();
11866 Void Selection_Invert();
11870 Void Selection_SelectAllByMaterial();
11874 Ident SetOfElements_Create();
11878 Void SetOfElements_CopyFrom(Ident DestinationSet,Ident SourceSet);
11882 Void SetOfElements_Append(Ident DestinationSet,Ident SourceSet);
11886 Void SetOfElements_Destroy(Ident SetHandle);
11890 Void SetOfElements_Empty(Ident SetHandle);
11894 Void SetOfElements_SetAllElements(Ident SetHandle);
11898 Void SetOfElements_SetAllFaces(Ident SetHandle);
11902 Void SetOfElements_DeleteElements(Ident SetHandle);
11906 Void SetOfElements_DeleteElements(Ident SetHandle,Boolean Spread);
11910 Boolean SetOfElements_HasHorizontalFaces(Ident SetHandle);
11914 Boolean SetOfElements_HasVerticalFaces(Ident SetHandle);
11918 Integer SetOfElements_GetElemsCount(Ident SetHandle);
11922 Integer SetOfElements_GetVerticesCount(Ident SetHandle);
11926 Integer SetOfElements_GetEdgesCount(Ident SetHandle);
11930 Integer SetOfElements_GetFacesCount(Ident SetHandle);
11934 Void ExtendSelectedSet(Ident SetHandle);
11938 Boolean GetBordersSet(Ident SetHandle,Ident SetBordersHandle);
11942 Void GetBordersVertexs(Ident SetHandle,Ident SetVertexHandle);
11946 Void SelectionSet_SelectAll();
11950 Void Curve2DPolygon(Ident FourVertexSetHandle,Ident Sethandle,Integer SubTexIndex);
11954 Void Preview_Clear();
11958 Void VoxelSpace_SetVec3(Vec3 Pos);
11962 Integer VoxelSpace_GetVoxelsCount();
11966 Void VoxelSpace_SelectAll();
11970 Void VoxelSpace_DeleteOneVoxel();
11974 Void VoxelSpace_DeleteSelection();
11978 Void VoxelSpace_ApplyMaterialToVoxel();
11982 Void VoxelSpace_GenerateMesh();
11986 Vec3 VoxelSpaceCenter;
11990 Vec3 VoxelSpaceAngle;
11994 Real VoxelSpaceStep;
11998 Boolean VoxelSpaceIsInteractive;
12002 Void SetOfElements_ProjectOnPlane(Ident SetHandle);
12006 Void SetOfElements_ProjectOnGround(Ident SetHandle,Real Height);
12010 Void SetOfElements_SplitEdgeWithVertex(Ident SetHandle);
12014 Void SetOfElements_CollapseEdgeWithVertex(Ident SetHandle);
12018 Void SetOfElements_Subdivide(Ident SetHandle);
12022 Void SetOfElements_Subdivide_Interpolation(Ident SetHandle);
12026 Void SetOfVertices_DrawCircle(Ident InputSetHandle,Ident ResultSetHandle);
12030 Void SetOfVertices_DrawDisc(Ident InputSetHandle,Ident ResultSetHandle);
12034 Void SetOfVertices_DrawCircle(Ident CenterSetHandle,Vec3 PointOnCircle,Ident ResultSetHandle);
12038 Void SetOfVertices_DrawIcosahedron(Ident InputSetHandle,Ident ResultSetHandle);
12042 Void SetOfVertices_DrawIcosahedron(Ident CenterSetHandle,Vec3 PointOnCircle,Ident ResultSetHandle);
12046 Void SetOfVertices_DrawIcosahedricSphere(Ident InputSetHandle,Ident ResultSetHandle);
12050 Void SetOfVertices_DrawPoly(Ident InputSetHandle,Ident ResultSetHandle,Integer VerticesCount);
12054 Void SetOfVertices_DrawPoly(Ident CenterSetHandle,Vec3 PointOnPoly,Ident ResultSetHandle,Integer VerticesCount);
12058 Void SetOfVertices_DrawSpline(Ident ControlSetHandle,Ident ResultSetHandle);
12062 Void SetOfVertices_Weld(Ident VerticesSetHandle);
12066 Void SetOfVertices_DrawBox(Ident ControlSetHandle,Ident ResultSetHandle);
12070 Void SetOfEdges_Fill(Ident SetHandle);
12074 Void SetOfEdges_Flip(Ident SetHandle,Ident ResultSetHandle);
12078 Void SetOfEdges_BorderExpand(Ident SetHandle);
12082 Void SetOfOneEdge_FaceLoopExpand(Ident SetHandle);
12086 Void SetOfOneEdge_EdgeLoopExpand(Ident SetHandle);
12090 Void SetOfOneFace_CutHole(Ident FaceSetHandle,Ident EdgesSetHandle);
12094 Void SetOfFaces_Extrude(Ident SetHandle,Ident ResultSetHandle);
12098 Void SetOfFaces_QuadsToTriangles(Ident SetHandle,Ident ResultSetHandle);
12102 Void SetOfFaces_TrianglesToQuads(Ident SetHandle,Ident ResultSetHandle);
12106 Void SetOfFaces_ApplyMaterial(Ident SetHandle,Ident MaterialId);
12110 Void SetOfFaces_PlanarExpand(Ident FacesSetHandle);
12114 Void SetOfFaces_ChangeOrientation(Ident FacesSetHandle);
12118 Array<Text> PrefabNames;
12122 Integer const PrefabNamesUpdateId;
12126 Integer PrefabListCurrentPage;
12130 Integer Prefab_TotalNb;
12134 Void Prefabs_Reload();
12138 Void Prefab_Export();
12142 Void Prefab_Import(Integer PrefabIndex);
12146 Boolean Parts_CanMergeParts();
12150 Boolean Parts_CanGroupParts();
12154 Boolean Parts_CanUngroupParts();
12158 Int3 Parts_GetOpsState();
12162 Void Parts_MergeSelectedParts();
12166 Void Parts_Group();
12170 Void Parts_UngroupSelectedParts();
12174 Void Cut();
12178 Void Copy();
12182 Void AddUndoState();
12186 Boolean AutoSave(Text FileName);
12190 Array<CEditorEvent* const > PendingEvents;
12194 Boolean MustClearLastSaveBuffer;
12198 Boolean const IsExperimental;
12202 CEditorMesh::ETitleCoreType GetTitleCoreType();
12203};
12204
12212public :
12216 Void Bindings_AddContext(Text ContextName);
12220 Void Bindings_AddBinding(Text ContextName,Text BindingScriptId,Text BindingDisplayName);
12224 Void Bindings_RemoveContext(Text ContextName);
12228 Void Bindings_RemoveBinding(Text ContextName,Text BindingName);
12232 Void Bindings_RequestInput(Text ContextName,Text BindingName);
12236 Boolean const Bindings_RequestInput_Done;
12240 Void Bindings_SetBindingScriptId(Text ContextName,Text BindingScriptId,Text NewBindingScriptId);
12244 Void Bindings_SetBindingDisplayName(Text ContextName,Text BindingScriptId,Text BindingDisplayName);
12248 Void Bindings_SetContextName(Text ContextName,Text NewContextName);
12252 Array<Text> BindingContexts;
12256 Void Bindings_GetContextBindings(Text ContextName);
12260 Array<Text> RequestedContextBindings;
12264 Text Bindings_GetBindingActionName(Text ContextName,Text BindingName);
12268 Text Bindings_GetBindingDisplayName(Text ContextName,Text BindingName);
12272 Array<CEditorEvent* const > PendingEvents;
12273};
12274
12279public :
12283 enum EMediaTrackerBlockType {
12284 Ghost,
12285 CameraCustom,
12286 CameraPath,
12287 Time,
12288 FxColors,
12289 Sound,
12290 Fog,
12291 TransitionFade,
12292 CameraEffectShake,
12293 CameraEffectScript,
12294 Stereo3d,
12295 DOF,
12296 ToneMapping,
12297 BloomHdr,
12298 DirtyLens,
12299 ColorGrading,
12300 FxCameraBlend,
12301 MusicEffect,
12302 TimeSpeed,
12303 TextBlock,
12304 Image,
12305 ColoringCapturable,
12306 ColoringBase,
12307 CameraGame,
12308 Trails,
12309 Manialink,
12310 EditingCut,
12311 CamFxInertialTracking,
12312 VehicleLight,
12313 Interface,
12314 Triangles2D,
12315 Triangles3D,
12316 CameraOrbital,
12317 OpponentVisibility,
12318 Spectators,
12319 };
12323 enum EMediaTrackerCopyType {
12324 None,
12325 Key,
12326 Block,
12327 };
12331 enum EMediaTrackerPasteType {
12332 None,
12333 KeyInfo,
12334 NewKey,
12335 BlockCurrentTrack,
12336 BlockNewTrack,
12337 };
12341 enum EMediaTrackerGhostRef {
12342 Author,
12343 Ghost1,
12344 Ghost2,
12345 Ghost3,
12346 };
12350 Real CurrentTimer;
12354 Boolean UseOrbitalInsteadOfFreeCam;
12358 Boolean UseClipCamWhenAvailable;
12362 Boolean CanUseClipCam;
12366 Real PlaySpeed;
12370 Real CameraSpeed;
12374 Real ClipConditionValue;
12378 Void TimePlay();
12382 Void TimeStop();
12386 Void TimeToggle();
12390 Void Rewind();
12394 Void Quit();
12398 Void UpdatePropertyListReadOnly();
12402 Void CreateBlock();
12406 Void CreateKey();
12410 Void ToggleTriggersMode();
12414 Void CreateClip();
12418 Void RemoveClip();
12422 Void Undo();
12426 Void Redo();
12430 Void ImportClip();
12434 Void ExportClip();
12438 Void ImportGhosts();
12442 Void ToggleRecordGhostMode();
12446 Void ShootVideo();
12450 Void ShootScreen();
12454 Void ComputeShadows();
12458 Void ToggleDisplayPlayerNames();
12462 Void InformInterfaceIsHidden();
12466 Void ToggleGhostRef();
12470 Void StopGhostRefPreview();
12474 Void ToggleClipCondition();
12478 Void Copy();
12482 Void Paste();
12486 Void Cut();
12490 Void DuplicateTrack();
12494 Void SplitBlock();
12498 Void MergeTracks();
12502 Void ToggleAlwaysShowTriggerZone();
12506 Void ResetTriggerZone();
12510 Void RemoveAllTracks();
12514 CMediaTrackerClip * const Clip;
12518 CMediaTrackerClipGroup * const ClipGroup;
12522 Array<CEditorEvent* const > PendingEvents;
12526 Text const PopUpMessage;
12530 CEditorMediaTracker::EMediaTrackerBlockType const EditMode;
12534 Void SetClip(CMediaTrackerClip Clip);
12538 Boolean IsPlaying();
12542 Boolean IsDevMode();
12546 Void SetCameraDrawRect(Vec2 Pos,Vec2 Size);
12550 Integer GetSelectedClip();
12554 Integer GetSelectedTrack();
12558 Integer GetSelectedBlock();
12562 Integer GetSelectedKey();
12566 Void SelectItem(Integer Track,Integer Block,Integer Key);
12570 Void CreateTrack(CEditorMediaTracker::EMediaTrackerBlockType Type);
12574 Boolean CanCreateTrack(CEditorMediaTracker::EMediaTrackerBlockType Type);
12578 Boolean IsKeyStartEnd(Integer Track,Integer Block,Integer Key);
12582 Void RemoveTrack(Integer Track);
12586 Void RemoveBlock(Integer Track,Integer Block);
12590 Void RemoveKey(Integer Track,Integer Block,Integer Key);
12594 Boolean CanRemoveAllKeys(Integer Track,Integer Block);
12598 Void RemoveAllKeys(Integer Track,Integer Block);
12602 Void SetProcessCamInputs(Boolean ProcessCamInputs);
12606 Void ToolBarSetVisible(Boolean Visible);
12610 Boolean IsTriggersModeOn();
12614 Boolean IsRecordGhostModeOn();
12618 Void SetTempHidePropertyList(Boolean TempHide);
12622 Void SetClipName(Integer Index,Text Name);
12626 Void SetTrackName(Integer Index,Text Name);
12630 Void SetTrackIsCycling(CMediaTrackerTrack Track,Boolean IsCycling);
12634 Void SetTrackIsKeepPlaying(CMediaTrackerTrack Track,Boolean IsKeepPlaying);
12638 Boolean GetTrackIsCycling(CMediaTrackerTrack Track);
12642 Boolean GetTrackIsKeepPlaying(CMediaTrackerTrack Track);
12646 Void SetStartIsCycling(CMediaTrackerTrack Track);
12650 Void SetStopIsCycling(CMediaTrackerTrack Track);
12654 Real GetStartIsCycling(CMediaTrackerTrack Track);
12658 Real GetStopIsCycling(CMediaTrackerTrack Track);
12662 Text GetGhostRefName();
12666 Text GetClipConditionName();
12670 Boolean HasClipCondition();
12674 Real GetTimeLimit();
12678 Void SetTimer(Text Time);
12682 Void SetCurrentBlockStart(Text Start);
12686 Void SetCurrentBlockEnd(Text End);
12690 CEditorMediaTracker::EMediaTrackerCopyType CanCopy();
12694 CEditorMediaTracker::EMediaTrackerCopyType CanCut();
12698 CEditorMediaTracker::EMediaTrackerPasteType CanPaste();
12702 Boolean HasCopiedItem();
12706 Boolean IsPropertyListReadOnlyAndVisible();
12710 Void SelectGhostRef(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12714 Void DeleteGhostRef(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12718 Void RecordGhostRef(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12722 Boolean GhostRefExists(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12726 CEditorMediaTracker::EMediaTrackerGhostRef GetSelectedGhostRef();
12730 Void StartGhostRefPreview(CEditorMediaTracker::EMediaTrackerGhostRef Type);
12734 Void RemoveAllGhostTracksExcept(Integer Track);
12738 Void RemoveAllCameraTracksExcept(Integer Track);
12742 Boolean CanRemoveAllGhostTracks();
12746 Boolean CanRemoveAllCameraTracks();
12750 Boolean IsGhostRefPreview();
12754 Void SetProfileTheme(Integer Theme);
12758 Integer GetProfileTheme();
12759};
12760
12765public :
12769 enum EPainterMode {
12770 NoOp,
12771 Fill,
12772 Brush,
12773 Sticker,
12774 Layer,
12775 BadgeSlots,
12776 Team,
12777 };
12781 enum EPainterSolidType {
12782 Other,
12783 CarWithPilot,
12784 Pilot_Male,
12785 Pilot_Female,
12786 Helmet,
12787 };
12791 enum EEditorSkin_IconType {
12792 Stickers,
12793 Brushs,
12794 Layers,
12795 SubObjects,
12796 };
12800 Array<CImage*> AllIcons;
12804 Array<CEditorEvent*> PendingEvents;
12808 Array<Vec3> CustomColors;
12812 CEditorSkin::EPainterMode PainterMode;
12816 CEditorSkin::EPainterSolidType PainterSolidType;
12820 Boolean IsTextEnabled;
12824 Boolean IsPickingColor;
12828 Boolean IsErasing;
12832 Boolean IsUsingShininessOnly;
12836 Boolean IsBrushNormal;
12840 Boolean IsTextSymmetry;
12844 Array<Integer> SubObjectsSelected;
12848 Integer SubObjectsCount;
12852 Array<Integer> LayersSelected;
12856 Integer LayersCount;
12860 Array<Integer> StickersSelected;
12864 Integer StickersCount;
12868 Array<Integer> BrushsSelected;
12872 Integer BrushsCount;
12876 Array<Integer> SubFolderElemSelected;
12880 Integer CurSubFolderElemCount;
12884 Real Transparency;
12888 Real Scale;
12892 Real Rough;
12896 Real Metal;
12900 Vec3 Color;
12904 Integer EditionLayersCount;
12908 Boolean IsEditingLayer;
12912 Integer EditionLayerSelected;
12916 Integer SubObjectHovered;
12920 Array<Integer> CurrentLayerSubObjectsSelected;
12924 Boolean CanUndo;
12928 Boolean CanRedo;
12932 Text TextToCreateBitmap;
12936 Boolean IsFillWithReplacement;
12940 Text SkinName;
12944 Boolean IsCameraButtonOn;
12948 Void ToggleIsTextEnabled();
12952 Void ToggleIsPickingColor();
12956 Void TogglePaintSymMode();
12960 Void EditCurrentLayerSelected();
12964 Void AddAndEditLayer();
12968 Void CloseEditSelectedLayer();
12972 Void MoveSelectedLayerUp();
12976 Void MoveSelectedLayerDown();
12980 Void DeleteSelectedLayer();
12984 Void Undo();
12988 Void Redo();
12992 Void ExportSkin();
12996 Void AlignBrushSticker();
13000 Void AskSwitchEditedNodType();
13004 Void ToggleHelper();
13008 Void ToggleLight();
13012 Void ExportLayerEdition();
13016 Void ImportLayerEdition();
13020 CImage GetAllIconFromId(Integer Index,CEditorSkin::EEditorSkin_IconType IconType);
13024 CImage GetSubFolderIconFromId(Integer FolderIndex,Integer ElemIndex,CEditorSkin::EEditorSkin_IconType IconType);
13028 Text GetLayerNameFromIndex(Integer Index);
13032 Boolean GetLayerVisibleFromIndex(Integer Index);
13036 Void SetLayerVisibleFromIndex(Boolean IsVisible,Integer Index);
13040 Boolean SetPainterMode(CEditorSkin::EPainterMode Mode);
13044 Integer GetSubObjectMaxPage(Integer NbPerPage);
13048 Integer GetMainFrameMaxPage(Integer NbPerPage);
13052 Void OnLayerSelected(Integer CurrentPage,Integer Index);
13056 Void OnStickerSelected(Integer CurrentPage,Integer Index);
13060 Void OnBrushSelected(Integer CurrentPage,Integer Index);
13064 Void OnSubFolderElemSelected(Integer SubFolderCurrentPage,Integer ElemIndex);
13068 Void SetCurrentLayerSelectedName(Text Name);
13072 Void AddScale(Real Delta);
13076 Void AddAngle(Real DeltaRad);
13080 Void SetSubObjectIndexForLayer(Integer SubObjectIndex,Integer LayerIndex,Boolean ResetFirst);
13084 Boolean IsElemAtScriptIndexFolder(Integer ScriptIndex,CEditorSkin::EEditorSkin_IconType IconType);
13088 Text GetFolderNameFromScriptIndex(Integer ScriptIndex,CEditorSkin::EEditorSkin_IconType IconType);
13092 Boolean IsCtrlDown();
13096 Text GetSubObjectNameFromIndex(Integer ScriptIndex);
13100 Void OpenMediaFolder(Text SubFolderPath);
13104 Void ReloadResources(Boolean forSubObjects);
13105};
13106
13115public :
13123 CModuleMenuComponent GetFirstComponent(Text Name);
13124};
13125
13129class CTitleControl : public CNod {
13130public :
13134 enum ESplitScreenLayout {
13135 Horizontal,
13136 Vertical,
13137 Four,
13138 };
13142 enum EResult {
13143 Success,
13144 Error_Internal,
13145 Error_DataMgr,
13146 Error_Net_ServerNotFound,
13147 Error_Net_ServerUnreachable,
13148 Error_Net_Disconnected,
13149 Error_Net_WrongPassword,
13150 Error_Network_OnlineExpired,
13151 Error_Network_ServerFull,
13152 Error_Abort,
13153 };
13157 enum EEditorType {
13158 ActionMaker,
13159 ChallengeEditor,
13160 ItemEditor,
13161 InterfaceDesigner,
13162 MeshModeler,
13163 };
13167 enum EReplayEditType {
13168 None,
13169 Edit,
13170 View,
13171 Shoot,
13172 };
13180 CTitleControl::EResult const LatestResult;
13184 Text const CustomResultType;
13188 Array<Text> CustomResultData;
13192 Void PlayMap(Text Map,Text Mode,Text SettingsXml);
13196 Void PlayCampaign(CCampaign Campaign,CMapInfo MapInfo,Text Mode,Text SettingsXml);
13200 Void PlayMapList(Array<Text> MapList,Text Mode,Text SettingsXml);
13204 Void PlayMatchSettings(CMatchSettings MatchSettings,Text OverrideMode,Text OverrideSettingsXml);
13208 Void PlayAgainstReplay(Text Replay,Text Mode,Text SettingsXml);
13212 Void PlaySplitScreen(CTitleControl::ESplitScreenLayout LayoutType,Array<Text> MapList,Text Mode,Text SettingsXml);
13216 Void PlayMultiOnSameScreen(Array<Text> MapList,Text Mode,Text SettingsXml);
13220 Void PlaySplitScreen(CTitleControl::ESplitScreenLayout LayoutType,CMatchSettings MatchSettings);
13224 Void PlayMultiOnSameScreen(CMatchSettings MatchSettings);
13228 Void ViewReplay(Text Replay);
13232 Void OpenEditor(Text EditorName,Text MainPluginSettings);
13236 Void OpenEditor(CTitleControl::EEditorType EditorType);
13240 Void EditSkins();
13244 Void EditSkinsFromFileName(Text SkinFilePath);
13248 Void EditReplay(Array<Text> ReplayList);
13252 Void EditReplay(Array<Text> ReplayList,CTitleControl::EReplayEditType EditType);
13256 Void EditGhosts(Text Map);
13260 Void EditAsset(Text EditorName,Text MainPluginSettingsXml,Text RelativeFileName);
13264 Void EditMap(Text Map,Text EditorPluginScript,Text EditorPluginArgument);
13268 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text EditorPluginScript,Text EditorPluginArgument);
13272 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text EditorPluginScript,Text EditorPluginArgument,Boolean UpgradeToAdvancedEditor);
13276 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean UpgradeToAdvancedEditor);
13280 Void EditMap(Text Map,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean UpgradeToAdvancedEditor,Boolean OnlyUseForcedPlugins);
13284 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Text EditorPluginScript,Text EditorPluginArgument);
13288 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Boolean UseSimpleEditor,Text EditorPluginScript,Text EditorPluginArgument);
13292 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Boolean UseSimpleEditor,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments);
13296 Void EditNewMap(Text Environment,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Boolean UseSimpleEditor,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean OnlyUseForcedPlugins);
13300 Void EditNewMapFromBaseMap(Text BaseMapName,Text ModNameOrUrl,Text PlayerModel,Text MapType,Text EditorPluginScript,Text EditorPluginArgument);
13304 Void EditNewMapFromBaseMap(Text BaseMapName,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Text EditorPluginScript,Text EditorPluginArgument);
13308 Void EditNewMapFromBaseMap(Text BaseMapName,Text Decoration,Text ModNameOrUrl,Text PlayerModel,Text MapType,Array<Text> EditorPluginsScripts,Array<Text> EditorPluginsArguments,Boolean OnlyUseForcedPlugins);
13312 Boolean const CanPublishFiles;
13320 Void ProcessManiaCodeXml(Text ManiaCodeXml);
13324 Array<CServerInfo* const > LocalServers;
13328 Array<CServerInfo* const > LocalServers_CurrentTitle;
13332 Void DiscoverLocalServers();
13336 Void CreateServer(Text ServerName,Text ServerComment,Integer MaxPlayerCount,Text Password,Text PasswordSpectators,CMatchSettings MatchSettings);
13340 Void CreateServer(Text ServerName,Text ServerComment,Integer MaxPlayerCount,Text Password,Text PasswordSpectators,CMatchSettings MatchSettings,Boolean LocalOnly);
13348 Void GetServerInfo(CServerInfo LocalServer);
13352 Void GetServerInfo_Abort();
13356 CServerInfo * const GetServerInfo_Result;
13360 Void Join_GetServerInfo_Result(Boolean AsSpectator,Text Password);
13364 Void JoinServer(Text ServerLogin,Boolean AsSpectator,Text Password);
13368 Boolean JoinServer_DisableSystemDialogs;
13372 Void Quit();
13373};
13374
13383public :
13387 CStation * const Station;
13391 Void EnterStation();
13395 Void Maker_EditTitle(Text EditedTitleId);
13399 Void Maker_EditNewTitle(Text EditedTitleName);
13403 Array<CPackCreatorTitleInfo* const > Maker_EditedTitles;
13404};
13405
13409class CStation : public CNod {
13410public :
13414 enum EEchelon {
13415 None,
13416 Bronze1,
13417 Bronze2,
13418 Bronze3,
13419 Silver1,
13420 Silver2,
13421 Silver3,
13422 Gold1,
13423 Gold2,
13424 Gold3,
13425 };
13429 CTitle * const Title;
13433 Integer const AudienceRegisteredUsers;
13437 Integer const CampaignMedalsMax;
13441 Integer const CampaignMedalsCurrent;
13445 Integer const CampaignMedalsRanking;
13449 Real const LadderPoints;
13453 Integer const LadderRank;
13457 CStation::EEchelon const Echelon;
13461 Integer const NextEchelonPercent;
13465 Boolean DisableQuickEnter;
13469 Boolean IsLogoVisible;
13473 Real GhostAlpha;
13477 Vec3 FocusLightColor;
13481 Vec3 NormalLightColor;
13486};
13487
13496public :
13500 Array<CManiaAppEvent* const > PendingEvents;
13504 Void BrowserBack();
13508 Void BrowserQuit();
13512 Void BrowserHome();
13516 Void BrowserReload();
13520 Text BrowserFocusedFrameId;
13521};
13522
13531class CMap : public CNod {
13532public :
13536 CMapInfo * const MapInfo;
13540 Text MapName;
13544 Text Comments;
13548 Text const AuthorZoneIconUrl;
13552 Text const CollectionName;
13556 Text const DecorationName;
13560 Text const AuthorLogin;
13564 Text const AuthorNickName;
13568 Text const AuthorZonePath;
13572 Text const MapType;
13576 Text const MapStyle;
13580 Integer TMObjective_AuthorTime;
13584 Integer TMObjective_GoldTime;
13588 Integer TMObjective_SilverTime;
13592 Integer TMObjective_BronzeTime;
13596 Integer TMObjective_NbLaps;
13600 Boolean TMObjective_IsLapRace;
13604 Text ObjectiveTextAuthor;
13608 Text ObjectiveTextGold;
13612 Text ObjectiveTextSilver;
13616 Text ObjectiveTextBronze;
13620 Integer const CopperPrice;
13624 Int3 const Size;
13628 Boolean const HasCustomIntro;
13632 Boolean const HasCustomMusic;
13633};
13634
13641class CMlFrame : public CMlControl {
13642public :
13650 CMlControl GetFirstChild(Text ControlId);
13654 Boolean ScrollActive;
13658 Vec2 ScrollOffset;
13662 Vec2 const ScrollAnimOffset;
13666 Vec2 ScrollMax;
13670 Vec2 ScrollMin;
13674 Boolean ScrollGridSnap;
13678 Vec2 ScrollGrid;
13682 Void Scroll(Vec2 DeltaInGridUnits);
13686 Void ScrollBumpTop();
13690 Void ScrollBumpBottom();
13694 Void ScrollBumpLeft();
13698 Void ScrollBumpRight();
13702 Boolean DisablePreload;
13703};
13704
13711class CBaseConstEvent : public CNod {
13712public :
13717};
13718
13726public :
13730 Vec3 Color;
13731};
13732
13739class CMlTimeLine : public CMlControl {
13740public :
13744 Real Time;
13748 Real TimeMin;
13752 Real TimeMax;
13756 Integer Page;
13760 Integer TracksPerPage;
13764 Boolean const IsDraggingCursor;
13768 Boolean const IsDraggingBlock;
13772 Boolean const IsDraggingKey;
13776 Boolean const IsScaling;
13780 Boolean const IsPanning;
13784 Void ShowFullTimeLine();
13788 Void ResetCycling();
13792 Void SetSimpleMediaTrackerPilot(CEditorMediaTracker MediaTracker);
13796 Void SetSelection(Integer Track,Integer Block,Integer Key);
13800 Void SetSeparatorColor(Text HexColor);
13804 Void SetBgColor(Text HexColor);
13808 Void SetCursorColor(Text HexColor);
13812 Void SetRulerColor(Text HexColor);
13816 Void SetRulerLineColor(Text HexColor);
13820 Void SetKeyColor(Text HexColor);
13824 Void SetStartIsCycling(Real Time);
13828 Void SetStopIsCycling(Real Time);
13832 Void SetTimeLimit(Real TimeLimit);
13833};
13834
13841class CMlSlider : public CMlControl {
13842public :
13846 Real Value;
13850 Real MinRange;
13854 Real MaxRange;
13855};
13856
13864public :
13868 Boolean IsInitPlay;
13872 Boolean Music;
13876 Boolean IsLooping;
13880 Real Volume;
13884 Text Url;
13888 Void Play();
13892 Void Stop();
13896 Void StopAndRewind();
13897};
13898
13905class CMlGraph : public CMlControl {
13906public :
13910 Vec2 CoordsMin;
13914 Vec2 CoordsMax;
13918 CMlGraphCurve AddCurve();
13922 Void RemoveCurve(CMlGraphCurve Curve);
13926 Array<CMlGraphCurve*> Curves;
13927};
13928
13935class CMlGauge : public CMlControl {
13936public :
13940 Text Style;
13944 Void SetRatio(Real NewRatio);
13948 Void SetClan(Integer NewClan);
13960 Integer Clan;
13964 Vec3 Color;
13968 Boolean DrawBackground;
13972 Boolean DrawBlockBackground;
13976 Boolean CenteredBar;
13977};
13978
13985class CMlCamera : public CMlControl {
13986public :
13990 Boolean Fullscreen;
13991};
13992
13999class CMlTextEdit : public CMlControl {
14000public :
14004 enum EControlScriptEditorTextFormat {
14005 Basic,
14006 Script,
14007 Password,
14008 Newpassword,
14009 };
14013 Text Value;
14017 Void StartEdition();
14021 Integer MaxLine;
14025 Boolean AutoNewLine;
14029 Boolean ShowLineNumbers;
14033 Real LineSpacing;
14037 Integer const ValueLineCount;
14041 Real Opacity;
14045 Vec3 TextColor;
14049 Real TextSizeReal;
14053 CMlTextEdit::EControlScriptEditorTextFormat TextFormat;
14054};
14055
14062class CMlEntry : public CMlControl {
14063public :
14067 enum ETextFormat {
14068 Basic,
14069 Script,
14070 Password,
14071 Newpassword,
14072 };
14076 enum ValueType {
14077 Ml_Unknown,
14078 Ml_Natural,
14079 Ml_Integer,
14080 Ml_Real,
14081 Ml_String,
14082 Ml_TimeMmSsCc,
14083 Ml_TimeHhMmSs,
14084 Ml_RealFormated,
14085 Ml_TimeMmSs,
14086 Ml_Ascii7bit,
14087 Ml_Real3Decimals,
14088 Ml_TimeHhMmSs_24,
14089 Ml_TimeHhMm,
14090 Ml_Percent,
14091 Ml_Hexa,
14092 Ml_TimeHhMmSsOrMmSs,
14093 Ml_TimeHhMmFromSeconds,
14094 Ml_TimeHhMmSsMil,
14095 };
14099 Text Value;
14103 Void StartEdition();
14107 Void SetText(Text NewText,Boolean SendSubmitEvent);
14111 CMlEntry::ETextFormat TextFormat;
14115 Real Opacity;
14119 Vec3 TextColor;
14123 Real TextSizeReal;
14127 Integer MaxLength;
14131 CMlEntry::ValueType GetValueType();
14135 Void SetValueType(CMlEntry::ValueType ValueType);
14136};
14137
14144class CMlLabel : public CMlControl {
14145public :
14149 enum EBlendMode {
14150 Default,
14151 Add,
14152 };
14156 enum EFilterProfanities {
14157 Never,
14158 OnlyIfNotTranslated,
14159 Always,
14160 };
14164 Text Style;
14168 Text Substyle;
14172 Text TextFont;
14176 Void SetText(Text NewText);
14180 Text Value;
14184 Integer const ValueLineCount;
14188 Integer MaxLine;
14192 Real LineSpacing;
14196 Real ItalicSlope;
14200 Boolean AppendEllipsis;
14204 Boolean AutoNewLine;
14208 Real Opacity;
14216 Vec3 TextColor;
14220 Real TextSizeReal;
14224 CMlLabel::EBlendMode Blend;
14228 Real ComputeWidth(Text Text);
14232 Real ComputeWidth(Text Text,Boolean Translated);
14236 Real ComputeHeight(Text Text);
14240 Text TTS_AltText;
14244 Boolean TTS_AltText_Translate;
14248 Void TTS_Focus();
14252 Void TTS_Unfocus();
14256 CMlLabel::EFilterProfanities FilterProfanities;
14257};
14258
14265class CMlMinimap : public CMlControl {
14266public :
14270 Vec3 WorldPosition;
14274 Vec2 MapPosition;
14278 Real MapYaw;
14286 Boolean Underground;
14290 Boolean DisableAutoUnderground;
14294 Void Fog_SetAll(Real Value);
14298 Void Fog_ClearDisk(Vec3 WorldCenter,Real Radius,Real FadeSize);
14299};
14300
14307class CMlQuad : public CMlControl {
14308public :
14312 enum EKeepRatioMode {
14313 Inactive,
14314 Clip,
14315 Fit,
14316 };
14320 enum EBlendMode {
14321 Default,
14322 Add,
14323 };
14327 Void ChangeImageUrl(Text fieldName);
14331 CImage * Image;
14335 Text ImageUrl;
14339 Text ImageUrlFocus;
14343 Text AlphaMaskUrl;
14347 Text Style;
14351 Text Substyle;
14355 Boolean StyleSelected;
14359 Boolean const DownloadInProgress;
14363 Boolean SuperSample;
14367 Vec3 Colorize;
14371 Vec3 ModulateColor;
14375 Vec3 BgColor;
14379 Vec3 BgColorFocus;
14383 Real Opacity;
14387 CMlQuad::EKeepRatioMode KeepRatio;
14391 CMlQuad::EBlendMode Blend;
14395 Void RefreshImages();
14399 Void TTS_Focus();
14403 Void TTS_Unfocus();
14407 Text TTS_AltText;
14411 Boolean TTS_AltText_Translate;
14412};
14413
14417class CParsingDocument : public CNod {
14418public :
14422 Text const TextContents;
14426 CParsingNode * const Root;
14434 CParsingNode GetFirstChild(Text Name);
14435};
14436
14443class CHttpRequest : public CNod {
14444public :
14448 Text const Url;
14460 Boolean const IsCompleted;
14461};
14462
14466class CHttpEvent : public CNod {
14467public :
14471 enum EType {
14472 RequestComplete,
14473 };
14477 CHttpEvent::EType const Type;
14482};
14483
14487class CVideo : public CNod {
14488public :
14492 enum ETextureFilter {
14493 Default,
14494 Point,
14495 };
14499 CImage * const Image;
14503 Boolean IsLooping;
14507 Boolean const DownloadInProgress;
14511 Real const PlayLength;
14515 Void BeginProcessing();
14519 Void EndProcessing();
14523 Boolean const IsProcessing;
14531 Void Play();
14535 Void Pause();
14539 Void Stop();
14543 Boolean const IsPlaying;
14551 CVideo::ETextureFilter TextureFilter;
14552};
14553
14557class CAudioSource : public CNod {
14558public :
14562 Void Play();
14566 Void Stop();
14570 Boolean const IsPlaying;
14574 Boolean const DownloadInProgress;
14578 Real Volume;
14582 Real FadeDuration;
14586 Real VolumedB;
14590 Real Pitch;
14594 Vec3 RelativePosition;
14598 Vec3 PanRadiusLfe;
14602 Real PlayCursor;
14606 Real const PlayLength;
14607};
14608
14613public :
14617 enum EUpdateMode {
14618 Cut,
14619 OnNextBar,
14620 OnNextHalfBar,
14621 OnNextBeat,
14622 };
14626 Array<Real> Tracks_Volume;
14630 Array<Real> Tracks_VolumedB;
14634 Array<Text> Tracks_Name;
14638 Array<Real> Tracks_Length;
14642 Integer const Tracks_Count;
14646 Real const BeatsPerMinute;
14650 Real const BeatDuration;
14654 Integer const BeatsPerBar;
14658 CAudioSourceMusic::EUpdateMode UpdateMode;
14662 Boolean Dbg_ForceIntensity;
14666 Boolean Dbg_ForceSequential;
14670 Boolean Dbg_ForceRandom;
14690 Real FadeTracksDuration;
14694 Real FadeFiltersDuration;
14698 Void MuteAllTracks();
14702 Void UnmuteAllTracks();
14706 Void NextVariant();
14710 Void NextVariant(Boolean IsIntensityDecreasing);
14714 Void EnableSegment(Text SegmentName);
14718 Boolean UseNewImplem;
14719};
14720
14724class CInputEvent : public CNod {
14725public :
14729 enum EType {
14730 PadButtonPress,
14731 };
14735 enum EButton {
14736 Left,
14737 Right,
14738 Up,
14739 Down,
14740 A,
14741 B,
14742 X,
14743 Y,
14744 L1,
14745 R1,
14746 LeftStick,
14747 RightStick,
14748 Menu,
14749 View,
14750 LeftStick_Left,
14751 LeftStick_Right,
14752 LeftStick_Up,
14753 LeftStick_Down,
14754 RightStick_Left,
14755 RightStick_Right,
14756 RightStick_Up,
14757 RightStick_Down,
14758 L2,
14759 R2,
14760 None,
14761 };
14765 CInputEvent::EType const Type;
14769 CInputPad * const Pad;
14773 CInputEvent::EButton const Button;
14777 Boolean const IsAutoRepeat;
14781 Integer const KeyCode;
14785 Text const KeyName;
14786};
14787
14791class CInputPad : public CNod {
14792public :
14796 enum EButton {
14797 Left,
14798 Right,
14799 Up,
14800 Down,
14801 A,
14802 B,
14803 X,
14804 Y,
14805 L1,
14806 R1,
14807 LeftStick,
14808 RightStick,
14809 Menu,
14810 View,
14811 LeftStick_Left,
14812 LeftStick_Right,
14813 LeftStick_Up,
14814 LeftStick_Down,
14815 RightStick_Left,
14816 RightStick_Right,
14817 RightStick_Up,
14818 RightStick_Down,
14819 L2,
14820 R2,
14821 None,
14822 };
14826 enum EPadType {
14827 Keyboard,
14828 Mouse,
14829 Generic,
14830 XBox,
14831 PlayStation,
14832 Vive,
14833 };
14837 Integer const ControllerId;
14841 Ident const UserId;
14845 CInputPad::EPadType const Type;
14849 Text const ModelName;
14853 Integer const IdleDuration;
14857 Integer const Left;
14861 Integer const Right;
14865 Integer const Up;
14869 Integer const Down;
14873 Integer const A;
14877 Integer const B;
14881 Integer const X;
14885 Integer const Y;
14889 Integer const L1;
14893 Integer const R1;
14897 Integer const LeftStickBut;
14901 Integer const RightStickBut;
14905 Integer const Menu;
14909 Integer const View;
14929 Real const L2;
14933 Real const R2;
14937 Array<CInputPad::EButton> ButtonEvents;
14941 Void ClearRumble();
14945 Void AddRumble(Integer Duration,Real LargeMotor,Real SmallMotor);
14950};
14951
14955class CCampaign : public CNod {
14956public :
14960 Text const CampaignId;
14964 Array<CMapGroup*> MapGroups;
14968 Integer GetMapGroupCount();
14972 CMapGroup GetMapGroup(Integer Index);
14976 CMapInfo GetNextMap(CMapInfo CurrentMapInfo);
14980 Text ScoreContext;
14984 Boolean OfficialRecordEnabled;
14985};
14986
15000
15014
15040
15054
15068
15082
15096
15122
15130public :
15135};
15136
15162
15176
15190
15198public :
15203};
15204
15218
15236
15250
15264
15282
15290public :
15294 Array<CZone* const > ZoneList;
15298 CZone GetUserZone(Text WebServicesUserId);
15299};
15300
15304class CUserV2Profile : public CNod {
15305public :
15309 enum EMapEditorMode {
15310 Ask,
15311 Advanced,
15312 };
15316 enum EMapEditorMood {
15317 Sunrise,
15318 Day,
15319 Sunset,
15320 Night,
15321 };
15325 enum EMapEditorDifficulty {
15326 Simple,
15327 Advanced,
15328 Expert,
15329 };
15333 enum ECustomPlayerModels {
15334 All,
15335 OnlyTextures,
15336 None,
15337 };
15341 enum EInputMouseReleaseKey {
15342 LeftAlt,
15343 RightAlt,
15344 LeftCtrl,
15345 RightCtrl,
15346 };
15350 enum EPlayerVisibility {
15351 Hidden,
15352 Ghost,
15353 Opaque,
15354 };
15358 enum EDisplayRecords {
15359 Progressive,
15360 Always,
15361 Hide,
15362 };
15366 enum ERoadsideSpectatorVisibility {
15367 Never,
15368 SpectatorOnly,
15369 Always,
15370 };
15374 enum EIngameChatBackground {
15375 Hidden,
15376 Transparent,
15377 Opaque,
15378 };
15382 enum EIngameChatTextSize {
15383 Medium,
15384 Small,
15385 Big,
15386 };
15390 Boolean const CanChangePassword;
15394 Boolean const CanChangeNickName;
15402 Boolean const CanChangeSkin;
15406 Boolean const CanChangeZone;
15410 Boolean const CanChangeGroups;
15414 Void Account_ResetChanges();
15418 Text Account_Name;
15422 Text Account_EMail;
15426 Boolean Account_AcceptNews;
15430 Boolean Account_EnableAutoConnect;
15442 Text User_Description;
15446 Text User_ClubLinkUrl;
15450 Text User_Trigram;
15454 Boolean User_ForceEmptyPilotSkin;
15458 Text User_CharacterSkinOptions;
15462 Boolean User_CombinePrestigeAndSkins;
15466 Boolean Custom_EnableAvatars;
15470 Boolean Custom_EnableChat;
15474 CUserV2Profile::ECustomPlayerModels Custom_PlayerModels;
15478 Boolean Custom_EnableUnlimitedHorns;
15482 CUserV2Profile::EMapEditorMode Editors_MapEditorMode;
15486 Boolean Editors_MapEditorUseQuickstart;
15490 Boolean Editors_MapEditorQuickstartUseGamepad;
15494 CUserV2Profile::EMapEditorDifficulty Editors_MapEditorQuickstartDifficulty;
15498 CUserV2Profile::EMapEditorMood Editors_MapEditorQuickstartMood;
15502 Integer Editors_MapEditorQuickstartMapType;
15506 Boolean Online_AutoSaveReplay;
15510 Boolean Online_SaveRoundReplaysSeparately;
15514 CUserV2Profile::EPlayerVisibility Online_DefaultOpponentVisibility;
15518 CUserV2Profile::ERoadsideSpectatorVisibility Online_RoadsideSpectatorVisibility;
15522 Boolean Title_IsForbiddenWithParentalLock;
15526 Integer AddictionLimiter_DailyQuotaMinutes;
15530 Boolean Steam_OpenLinksInSteam;
15534 Boolean Steam_SynchonizeWorkshopFiles;
15538 Boolean Interface_CrosshairEnableCustomColor;
15558 Text Interface_CrosshairName;
15566 Boolean Interface_AllyEnableCustomColor;
15574 Boolean Interface_OppoEnableCustomColor;
15582 Boolean Interface_BeaconUseProfileColor;
15598 CUserV2Profile::EPlayerVisibility Interface_InternalCamLocalPlayerVisibility;
15602 Boolean Interface_UseOldInternalCam;
15606 Boolean Interface_UseAlternateCam1;
15610 Boolean Interface_UseAlternateCam2;
15614 Boolean Interface_ShowSpecialsFeedback;
15618 CUserV2Profile::EDisplayRecords Interface_DisplayRecords;
15622 Boolean Interface_AllowChatHiding;
15626 Boolean Interface_ColorblindMode;
15630 CUserV2Profile::EIngameChatBackground Interface_IngameChatBackground;
15634 CUserV2Profile::EIngameChatTextSize Interface_IngameChatTextSize;
15638 Boolean Inputs_MouseLookInvertY;
15642 CUserV2Profile::EInputMouseReleaseKey Inputs_MouseReleaseKey;
15666 Real Inputs_MouseSensitivityDefault_Raw;
15670 Real Inputs_MouseSensitivityLaser_Raw;
15674 Array<CVehicleSettings*> Inputs_Vehicles;
15678 Boolean Adverts_Enabled;
15682 Boolean Adverts_UsePersonnalData;
15686 Boolean TTS_Enabled;
15690 Boolean STT_Enabled;
15694 Boolean VoiceChat_Loopback;
15698 Boolean VoiceChat_Enabled;
15702 Boolean const STT_Available;
15706 Boolean VoiceChat_SendTextAsVoice;
15707};
15708
15716public :
15720 Array<Text> Values;
15721};
15722
15726class CMasterServerUser : public CNod {
15727public :
15731 Boolean const NeedToChangeZone;
15743 Integer const MultiInternetPlayTimeLeft;
15747 enum EMasterServerConnectionStatus {
15748 NotConnected,
15749 Connecting,
15750 Connected,
15751 Disconnecting,
15752 };
15764 CMasterServerUser::EMasterServerConnectionStatus const ConnectionStatus;
15768 Text const LastConnectionErrorType;
15772 Text const LastConnectionErrorCode;
15776 Text const LastConnectionErrorDescription;
15777};
15778
15786public :
15787};
15788
15796public :
15800 Boolean const Value;
15801};
15802
15816
15824public :
15828 Text const SessionId;
15832 Text const ServerLogin;
15836 Text const ServerPassword;
15837};
15838
15846public :
15850 Array<CNews* const > NewsList;
15851};
15852
15866
15874public :
15878 CUserPrestige * const UserPrestige;
15882 Boolean const HasUserPrestige;
15883};
15884
15892public :
15896 Array<CPrestige* const > PrestigeList;
15897};
15898
15906public :
15910 CSquad * const Squad;
15911};
15912
15920public :
15924 Text const Value;
15925};
15926
15934public :
15938 Text GetClubTag(Text WebServicesUserId);
15939};
15940
15954
15963public :
15967 Void Menu_Goto(Text PageId);
15971 Void Menu_Back();
15975 Void Menu_Previous();
15979 Void Menu_Quit();
15980};
15981
15989public :
15993 enum EType {
15994 LayerCustomEvent,
15995 KeyPress,
15996 ExternalCustomEvent,
15997 MenuNavigation,
15998 };
16002 enum EMenuNavAction {
16003 Up,
16004 Right,
16005 Left,
16006 Down,
16007 Select,
16008 Cancel,
16009 PageUp,
16010 PageDown,
16011 AppMenu,
16012 Action1,
16013 Action2,
16014 Action3,
16015 Action4,
16016 ScrollUp,
16017 ScrollDown,
16018 };
16022 CManiaAppEvent::EType const Type;
16026 CUILayer * const CustomEventLayer;
16030 Text const CustomEventType;
16034 Array<Text> CustomEventData;
16038 Text const ExternalEventType;
16042 Array<Text> ExternalEventData;
16046 CManiaAppEvent::EMenuNavAction const MenuNavAction;
16050 Boolean const IsActionAutoRepeat;
16054 Integer const KeyCode;
16058 Text const KeyName;
16059};
16060
16064class CTitleEdition : public CNod {
16065public :
16069 enum EDrive {
16070 TitleReadable,
16071 Title,
16072 User,
16073 };
16077 CTitle * const TitleMaker;
16085 Text const EditedTitleId;
16089 CPackCreatorTitleInfo * const EditedTitleInfo;
16097 Void File_Move(Text OrigName,Text DestNameOrFolder,Boolean KeepOriginalCopy);
16101 Boolean File_Exists(Text FileName,CTitleEdition::EDrive InDrive);
16105 Void File_Delete(Text Name);
16109 Void File_WriteText(Text FileName,Text Text);
16113 Text File_ReadText(Text FileName);
16117 Void Dialog_ImportFiles();
16121 Boolean const Dialog_IsFinished;
16125 Boolean const Dialog_Success;
16129 Boolean const Dialog_Aborted;
16133 Void OpenTitleFolderInExplorer();
16137 Void ReloadTitleDesc();
16141 Void SaveTitleDesc();
16145 Void SetTitleCampaign(Integer CampaignNum,Text ScoreContext,Text MapsFolderNameOrPlayListName,Boolean OfficialRecordEnabled);
16149 Void SetTitleCampaign(Integer CampaignNum,Text ScoreContext,Text MapsFolderNameOrPlayListName,Boolean OfficialRecordEnabled,Boolean DisableUnlockSystem);
16150};
16151
16156public :
16160 enum EFilterPriority {
16161 All,
16162 MoreThanMemo,
16163 MoreThanNotice,
16164 };
16180 CNotificationsConsumer::EFilterPriority Filter_Priority;
16181};
16182
16241
16246public :
16250 enum ESyncMode {
16251 Default,
16252 Disabled,
16253 Manual,
16254 Clan,
16255 Squad,
16256 };
16260 CGameUserVoiceChat::EMuteSetting NewRemoteUser_DefaultMuteSetting;
16264 CVoiceChatConfig::ESyncMode SyncMode;
16268 Text Manual_Channel;
16272 Void Manual_ClearUsers();
16276 CGameUserVoiceChat Manual_UserAdd_Proc(Text WebServicesUserId);
16277};
16278
16286public :
16290 enum Type {
16291 LayerCustomEvent,
16292 KeyPress,
16293 (reserved),
16294 MenuNavigation,
16295 CursorSelectionBegin,
16296 CursorSelectionEnd,
16297 CursorChange,
16298 MapModified,
16299 EditorInput,
16300 MapSavedOrSaveCancelled,
16301 EditAnchor,
16302 EditObjectives,
16303 StartValidation,
16304 StartTest,
16305 };
16309 enum EInput {
16310 Unknown,
16311 Menu,
16312 SwitchToRace,
16313 Undo,
16314 Redo,
16315 CursorUp,
16316 CursorRight,
16317 CursorDown,
16318 CursorLeft,
16319 CursorRaise,
16320 CursorLower,
16321 CursorTurn,
16322 CursorTurnSlightly,
16323 CursorTurnSlightlyAntiClockwise,
16324 CursorTiltLeft,
16325 CursorTiltRight,
16326 CursorPick,
16327 CursorPlace,
16328 CursorDelete,
16329 CameraUp,
16330 CameraRight,
16331 CameraDown,
16332 CameraLeft,
16333 CameraZoomNext,
16334 Camera0,
16335 Camera1,
16336 Camera3,
16337 Camera7,
16338 Camera9,
16339 PivotChange,
16340 IconUp,
16341 IconRight,
16342 IconDown,
16343 IconLeft,
16344 RemoveAll,
16345 Save,
16346 SelectAll,
16347 Copy,
16348 Cut,
16349 Paste,
16350 };
16354 CMapEditorPluginEvent::Type const Type;
16358 CMapEditorPluginEvent::EInput const Input;
16362 Ident const EditedAnchorDataId;
16366 Boolean const IsFromPad;
16370 Boolean const IsFromMouse;
16374 Boolean const IsFromKeyboard;
16378 Boolean const OnlyScriptMetadataModified;
16382 Boolean const MapSavedOrSaveCancelled;
16383};
16384
16389public :
16393 CMacroblockModel * const MacroblockModel;
16397 CBlockClipList * const ClipList;
16401 CMapEditorPlugin::CardinalDirections Dir;
16405 Int3 const Coord;
16409 Integer Order;
16413 Integer UserData;
16417 Array<Int3> UnitCoords;
16421 CMapEditorPlugin::MapElemColor const Color;
16425 Boolean const ForceMacroblockColor;
16429 Int3 GetSize();
16430};
16431
16435class CBlock : public CNod {
16436public :
16440 enum CardinalDirections {
16441 North,
16442 East,
16443 South,
16444 West,
16445 };
16449 Boolean const CanHaveAnchor;
16453 Void UseDefaultAnchor();
16457 Void UseCustomAnchor();
16461 Int3 const Coord;
16465 CMapEditorPlugin::CardinalDirections const Dir;
16469 CBlock::CardinalDirections const Direction;
16473 Array<CBlockUnit* const > BlockUnits;
16477 CBlockModel * const BlockModel;
16481 Boolean IsGhostBlock();
16482};
16483
16487class CItemAnchor : public CNod {
16488public :
16492 Vec3 const Position;
16496 CGameItemModel * const ItemModel;
16497};
16498
16505class CAnchorData : public CNod {
16506public :
16510 enum EWaypointType {
16511 Start,
16512 Finish,
16513 Checkpoint,
16514 None,
16515 StartFinish,
16516 Dispenser,
16517 };
16521 Text const DefaultTag;
16525 Integer const DefaultOrder;
16529 Text Tag;
16533 Integer Order;
16537 CAnchorData::EWaypointType const WaypointType;
16541 Vec3 const Position;
16542};
16543
16548public :
16552 CMapEditorInventoryDirectory * const CurrentRootNode;
16556 CMapEditorInventoryDirectory * const CurrentDirectory;
16560 CMapEditorInventoryNode * const CurrentSelectedNode;
16568 Void EnterDirectory();
16572 Void LeaveDirectory();
16576 Void SelectArticle(CMapEditorInventoryArticle NodeArticle);
16580 Void OpenDirectory(CMapEditorInventoryDirectory NodeDirectory);
16584 Void SelectNode(CMapEditorInventoryNode Node);
16588 Void OpenBrotherDirectory(Boolean NextOrElsePrevious);
16592 Void SelectBrotherArticle(Boolean NextOrElsePrevious);
16596 Void SelectBrotherNode(Boolean NextOrElsePrevious);
16613};
16614
16618class CBlockModel : public CCollector {
16619public :
16623 enum EWayPointType {
16624 Start,
16625 Finish,
16626 Checkpoint,
16627 None,
16628 StartFinish,
16629 Dispenser,
16630 };
16634 Text const Name;
16638 Boolean const IsRoad;
16642 Boolean const IsTerrain;
16646 Boolean const IsPodium;
16650 CBlockModel::EWayPointType const WaypointType;
16654 Boolean const NoRespawn;
16658 Boolean const IsClip;
16662 CBlockModelVariantGround * const VariantGround;
16666 CBlockModelVariantAir * const VariantAir;
16667};
16668
16677public :
16681 Boolean const IsGround;
16685 Boolean const HasStart;
16689 Boolean const HasFinish;
16693 Boolean const HasCheckpoint;
16697 Boolean const HasMultilap;
16701 CBlockModel * const GeneratedBlockModel;
16705 Void ClearScriptMetadata();
16709 Text const Name;
16710};
16711
16716public :
16717};
16718
16722class CBlockClipList : public CNod {
16723public :
16731 Int3 const Size;
16735 Boolean SetClipListFromMacroblock(CMacroblockModel MacroBlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
16739 Boolean SetClipListFromMacroblock(CMacroblockModel MacroBlockModel);
16743 Boolean SetClipListFromBlock(CBlockModel BlockModel,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
16747 Boolean SetClipListFromBlock(CBlockModel BlockModel);
16751 Void CreateAndAddClip(Text Name,Int3 Coord,Int3 Offset,CMapEditorPlugin::CardinalDirections Dir,Integer ClipId);
16755 Boolean SetFromClipList(CBlockClipList ClipList,Int3 Coord,CMapEditorPlugin::CardinalDirections Dir);
16759 Void RemoveClip(CBlockClip Clip);
16763 Void ClearClips();
16767 Void Destroy();
16768};
16769
16773class CBlockClip : public CNod {
16774public :
16778 Text const Name;
16782 CMapEditorPlugin::CardinalDirections Dir;
16786 Int3 const Coord;
16790 Int3 const Offset;
16794 Integer ClipId;
16798 Int3 GetConnectableCoord();
16799};
16800
16804class CMapEditorCamera : public CNod {
16805public :
16809 enum EZoomLevel {
16810 Close,
16811 Medium,
16812 Far,
16813 };
16817 enum ECameraVStep {
16818 Low,
16819 MediumLow,
16820 Medium,
16821 MediumHigh,
16822 High,
16823 };
16827 Void ReleaseLock();
16831 Void CenterOnCursor();
16835 Void WatchStart();
16839 Void WatchClosestFinishLine();
16843 Void WatchClosestCheckpoint();
16847 Void WatchWholeMap();
16851 Void WatchCustomSelection();
16855 Void MoveToMapCenter();
16859 Boolean GetLock();
16863 Boolean CanUse();
16867 Void IgnoreCameraCollisions(Boolean IgnoreCameraCollisions);
16871 Void TurnH(Boolean Clockwise);
16875 Void TurnH(Boolean Clockwise,Boolean HalfSteps);
16879 Void TurnH(Boolean Clockwise,Boolean HalfSteps,Boolean Smooth);
16883 Void TurnV(Boolean UpOrElseDown);
16887 Void TurnV(Boolean UpOrElseDown,Boolean Smooth);
16891 Void Move(CMapEditorPlugin::RelativeDirections RelativeDir);
16895 Void FollowCursor(Boolean Follow);
16899 Void CenterOnCursor(Boolean Smooth);
16903 Void MoveToMapCenter(Boolean Smooth);
16907 Void Watch(CBlock Block);
16911 Void Watch(CBlock Block,Boolean Smooth);
16915 Void Watch(CMacroblockInstance Macroblock);
16919 Void Watch(CMacroblockInstance Macroblock,Boolean Smooth);
16923 Void Watch(CBlockClip Clip);
16927 Void Watch(CBlockClip Clip,Boolean Smooth);
16931 Void WatchStart(Boolean Smooth);
16935 Void WatchClosestFinishLine(Boolean Smooth);
16939 Void WatchClosestCheckpoint(Boolean Smooth);
16943 Void WatchWholeMap(Boolean Smooth);
16947 Void WatchMacroblocks(Integer UserData);
16951 Void WatchMacroblocks(Integer UserData,Boolean Smooth);
16955 Void ZoomIn(Boolean Loop);
16959 Void ZoomIn(Boolean Loop,Boolean Smooth);
16963 Void ZoomOut(Boolean Loop);
16967 Void ZoomOut(Boolean Loop,Boolean Smooth);
16971 Void Zoom(CMapEditorCamera::EZoomLevel Level);
16975 Void Zoom(CMapEditorCamera::EZoomLevel Level,Boolean Smooth);
16979 Void Look(CMapEditorPlugin::CardinalDirections8 Direction);
16983 Void Look(CMapEditorPlugin::CardinalDirections8 Direction,Boolean Smooth);
16987 Void Look(CMapEditorPlugin::CardinalDirections Direction);
16991 Void Look(CMapEditorPlugin::CardinalDirections Direction,Boolean Smooth);
16995 Void SetVStep(CMapEditorCamera::ECameraVStep Step);
16999 Void WatchCustomSelection(Boolean WatchCustomSelection);
17003 Void ActivateScrollRotateMode(Boolean ActivateScrollRotateMode);
17004};
17005
17009class CMapEditorCursor : public CNod {
17010public :
17014 Void ReleaseLock();
17018 Int3 Coord;
17022 CMapEditorPlugin::CardinalDirections Dir;
17026 CBlockModel * BlockModel;
17030 CBlockModel * TerrainBlockModel;
17034 CMacroblockModel * MacroblockModel;
17038 Real Brightness;
17042 Boolean HideDirectionalArrow;
17046 Void MoveToCameraTarget();
17050 Void ResetCustomRGB();
17054 Boolean GetLock();
17058 Boolean CanUse();
17062 Boolean Raise();
17066 Boolean Lower();
17070 Void FollowCameraTarget(Boolean Follow);
17074 Void Rotate(Boolean CWOrCCW);
17078 Void Move(CMapEditorPlugin::CardinalDirections CardinalDir);
17082 Void Move(CMapEditorPlugin::CardinalDirections8 CardinalDir8);
17086 Void Move(CMapEditorPlugin::RelativeDirections RelativeDir);
17090 Void DisableMouseDetection(Boolean Disable);
17094 Boolean CanPlace();
17098 Boolean IsCustomRGBActivated();
17102 Boolean IsCurrentItemAnimated();
17106 Boolean CurrentMacroblockHasAnimatedItem();
17110 Boolean CurrentSelectionHasAnimatedItem();
17114 Void SetCustomRGB(Vec3 Color);
17115};
17116
17121public :
17125 Boolean CanPlace;
17129 Int3 Coord;
17133 CMapEditorPlugin::CardinalDirections Dir;
17134};
17135
17139class CUIConfigMarker : public CNod {
17140public :
17144 enum EAnchorType {
17145 Invalid,
17146 Position,
17147 Player,
17148 Entity,
17149 Landmark,
17150 GhostInstance,
17151 };
17155 enum EMiniMapVisibility {
17156 Never,
17157 Always,
17158 WhenInFrame,
17159 };
17163 enum EHudVisibility {
17164 Never,
17165 Always,
17166 WhenInFrustum,
17167 WhenVisible,
17168 WhenInMiddleOfScreen,
17169 };
17173 CUIConfigMarker::EAnchorType const Type;
17177 Boolean IsTurning;
17181 Boolean ShowArmor;
17185 Text Label;
17189 Vec3 Box;
17193 Text Icon;
17197 Vec3 Color;
17201 Text ImageUrl;
17205 Text ManialinkFrameId;
17209 Real DistMin;
17217 CUIConfigMarker::EMiniMapVisibility MiniMapVisibility;
17221 CUIConfigMarker::EHudVisibility HudVisibility;
17230 Real Gauge;
17231};
17232
17240class CMapLandmark : public CNod {
17241public :
17249 Text const Tag;
17253 Integer const Order;
17257 Vec3 const Position;
17261 CMapSector * const Sector;
17265 CMapWaypoint * const Waypoint;
17269 CMapSpawn * const PlayerSpawn;
17273 CMapBotPath * const BotPath;
17277 CMapBotSpawn * const BotSpawn;
17281 CMapObjectAnchor * const ObjectAnchor;
17282};
17283
17291public :
17295 enum EType {
17296 Unknown,
17297 OnModuleCustomEvent,
17298 OnModuleShowRequest,
17299 OnModuleHideRequest,
17300 OnModuleStorePurchase,
17301 OnModuleInventoryDrop,
17302 OnModuleInventoryEquip,
17303 OnLayerCustomEvent,
17304 };
17308 enum EModuleType {
17309 Undefined,
17310 Hud,
17311 Inventory,
17312 Store,
17313 ScoresTable,
17314 Equipment,
17315 MenuBase,
17316 MenuPage,
17317 Chrono,
17318 SpeedMeter,
17319 PlayerState,
17320 TeamState,
17321 };
17325 CUIConfigEvent::EType const Type;
17329 CUIConfig * const UI;
17333 CUIConfigEvent::EModuleType const ModuleType;
17337 Text const Param1;
17341 Array<Text> Param2;
17345 CUILayer * const CustomEventLayer;
17349 Text const CustomEventType;
17353 Array<Text> CustomEventData;
17357 Text const ItemUrl;
17361 Integer const Quantity;
17362};
17363
17367class CServerInfo : public CNod {
17368public :
17372 Text const ServerName;
17376 Text const ServerLogin;
17380 Text const JoinLink;
17384 Text const Comment;
17388 Text const ServerVersionBuild;
17392 Integer const PlayerCount;
17396 Integer const MaxPlayerCount;
17400 Integer const SpectatorCount;
17404 Integer const MaxSpectatorCount;
17408 Real const PlayersLevelMin;
17412 Real const PlayersLevelAvg;
17416 Real const PlayersLevelMax;
17420 Text const ModeName;
17424 Real const LadderServerLimitMax;
17428 Real const LadderServerLimitMin;
17432 Array<Text> PlayerNames;
17436 Array<Text> ChallengeNames;
17440 Array<Text> ChallengeIds;
17444 Integer const NbChallenges;
17448 Boolean const HasBuddies;
17452 Boolean const IsFavourite;
17456 Boolean const IsLobbyServer;
17460 Boolean const IsPrivate;
17464 Boolean const IsPrivateForSpectator;
17468 Boolean const IsMapDownloadAllowed;
17472 Boolean const IsTeamMode;
17476 Boolean const IsDisableChangeTeams;
17480 Text const SendToServerAfterMatchUrl;
17484 Integer const ViewerCount;
17485};
17486
17494public :
17498 enum EType {
17499 Unknown,
17500 Callback,
17501 CallbackArray,
17502 };
17506 CXmlRpcEvent::EType const Type;
17510 Text const Param1;
17514 Text const Param2;
17518 Text const ParamArray1;
17522 Array<Text> ParamArray2;
17523};
17524
17528class CTmRaceResultNod : public CNod {
17529public :
17533 enum ETmRaceResultCriteria {
17534 Time,
17535 Stunts,
17536 NbRespawns,
17537 CheckpointsProgress,
17538 None,
17539 };
17543 Integer Time;
17547 Integer Score;
17551 Integer NbRespawns;
17555 Ident SpawnLandmarkId;
17559 Array<Integer> Checkpoints;
17563 Array<Ident> CheckpointLandmarkIds;
17567 Integer Compare(CTmRaceResultNod Other,CTmRaceResultNod::ETmRaceResultCriteria Criteria);
17568};
17569
17573class CNotification : public CNod {
17574public :
17578 Text const Type;
17579};
17580
17585public :
17589 CModulePlaygroundInventory * Inventory;
17593 CModulePlaygroundStore * Store;
17597 CModulePlaygroundScoresTable * ScoresTable;
17601 CModulePlaygroundChrono * Chrono;
17605 CModulePlaygroundSpeedMeter * SpeedMeter;
17609 CModulePlaygroundPlayerState * PlayerState;
17613 CModulePlaygroundTeamState * TeamState;
17621 Void SwitchContext(CPlayer Player,Text ContextName);
17625 Void SetDefaultContext(CPlayer Player);
17629 Ident RetrieveModuleId(Text ModuleName);
17630};
17631
17645
17649class CModeTurretManager : public CNod {
17650public :
17654 Void MapTurrets_Reset();
17658 CModeTurret Turret_Create(Ident ModelId,Vec3 Position,Vec3 Direction,Integer Clan,CPlayer OwnerPlayer);
17662 CModeTurret Turret_CreateWithOwner(Ident ModelId,Vec3 Position,Vec3 Direction,Vec3 Up,Integer Clan,Ident OwnerId);
17666 CModeTurret Turret_CreateWithOwner(Ident ModelId,Vec3 Position,Vec3 Direction,Vec3 Up,Integer Clan,Ident OwnerId,Boolean AutoAimOn,Boolean AutoTriggerOn);
17670 Vec3 Turret_GetPosition(CModeTurret Turret);
17674 Void Turret_Destroy(CModeTurret Turret);
17678 Void Turret_DestroyAll();
17682 Void Turret_Activate(CModeTurret Turret);
17686 Void Turret_Deactivate(CModeTurret Turret);
17690 Void Turret_SetIsAutomatic(CModeTurret Turret,Boolean IsAuto);
17694 Void Turret_Auto_SetAimAnticipation(CModeTurret Turret,Real AimAnticipationMs);
17698 Void Turret_Auto_SetFirePeriod(CModeTurret Turret,Integer FirePeriodMs);
17702 Void Turret_Auto_SetTargetDetectionFov(CModeTurret Turret,Real DectectionFOVDeg);
17706 Void Turret_Auto_SetTargetDetectionRadius(CModeTurret Turret,Real DetectionRadius);
17710 Void Turret_Manual_SetTargetPos(CModeTurret Turret,Vec3 TargetPos);
17714 Void Turret_Manual_Fire(CModeTurret Turret);
17718 Array<CModeTurret*> Turrets;
17719};
17720
17725public :
17729 enum EArmorUse {
17730 Self,
17731 Group,
17732 Owner,
17733 Children,
17734 Mine,
17735 };
17739 enum ESlotType {
17740 Driver,
17741 Passenger,
17742 };
17746 Void MapVehicles_Reset();
17750 Void DestroyAllVehicles();
17754 CModeVehicle Vehicle_Create(Ident ModelId,Integer Clan,Integer Armor,CModeVehicleManager::EArmorUse ArmorUse,CMapSpawn Spawn);
17758 CModeVehicle Vehicle_Create(Ident ModelId,Vec3 Offset,Integer Armor,CModeVehicleManager::EArmorUse ArmorUse,CModeVehicle Owner);
17762 Void Vehicle_Destroy(CModeVehicle Vehicle);
17766 Void Vehicle_Assign_AutoPilot(CModeVehicle Vehicle,Text ModelName);
17770 Void Vehicle_Assign_AutoPilot(CModeVehicle Vehicle,Text ModelName,Boolean LoopPath);
17774 Void Vehicle_SetTrailVisible(CModeVehicle Vehicle,Boolean IsVisible);
17778 Void Vehicle_SetShieldVisible(CModeVehicle Vehicle,Boolean IsVisible);
17782 Integer VehicleModel_GetSlotsCount(Ident ModelId,CModeVehicleManager::ESlotType SlotType);
17786 Array<CModeVehicle*> Vehicles;
17787};
17788
17792class CActionManager : public CNod {
17793public :
17797 enum EActionSlot {
17798 Slot_A,
17799 Slot_B,
17800 Slot_C,
17801 Slot_D,
17802 Slot_E,
17803 Slot_F,
17804 Slot_G,
17805 Slot_H,
17806 };
17810 CActionInterface Action_GetState(CPlayer Player,CActionManager::EActionSlot Slot);
17814 CActionInterface Action_GetState(CModeVehicle Vehicle,Integer VehicleSlotIndex,CActionManager::EActionSlot Slot);
17818 CActionInterface Action_GetState(CModeTurret Turret,CActionManager::EActionSlot Slot);
17823};
17824
17838
17852
17856class CSmPlayerDriver : public CNod {
17857public :
17861 enum ESmDriverBehaviour {
17862 Static,
17863 Turret,
17864 Scripted,
17865 IA,
17866 Patrol,
17867 Escape,
17868 Saunter,
17869 Orbit,
17870 Follow,
17871 };
17875 enum ESmDriverPathState {
17876 Static,
17877 None,
17878 Computing,
17879 Simple,
17880 Full,
17881 Incomplete,
17882 InFlock,
17883 };
17887 enum ESmDriverPatrolMode {
17888 OneTrip,
17889 BackAndForth,
17890 Loop,
17891 };
17895 enum ESmAttackFilter {
17896 All,
17897 AllPlayers,
17898 AllBots,
17899 AllOpposite,
17900 OppositePlayers,
17901 OppositeBots,
17902 Nobody,
17903 };
17907 CSmPlayerDriver::ESmDriverBehaviour Behaviour;
17911 Boolean PursueTarget;
17915 Real AggroRadius;
17919 Real ShootRadius;
17923 Real TargetMinDistance;
17927 Real DisengageDistance;
17931 Real PathSpeedCoef;
17935 Real Accuracy;
17939 Integer ReactionTime;
17943 Integer ShootPeriodMin;
17947 Integer ShootPeriodMax;
17951 Boolean RocketAnticipation;
17959 CSmPlayerDriver::ESmAttackFilter AttackFilter;
17963 CSmPlayer * const Target;
17967 Boolean const IsStuck;
17971 CSmPlayerDriver::ESmDriverPathState const PathState;
17975 CSmPlayer * const Owner;
17979 Void Scripted_Move(Vec3 Goal);
17983 Void Scripted_MoveDelta(Vec3 Delta);
17987 Void Scripted_MoveAndAim(Vec3 Goal);
17991 Void Scripted_MoveDeltaAndAim(Vec3 Delta);
17995 Void Scripted_Aim(Vec3 Goal);
17999 Void Scripted_AimDelta(Real DeltaYaw,Real DeltaPitch);
18011 Void Scripted_RequestInput(CSmMode::EActionInput Input);
18015 CSmPlayerDriver::ESmDriverPatrolMode Patrol_Mode;
18019 CMapBotPath * Patrol_Path;
18027 Real Escape_DistanceSafe;
18031 Real Escape_DistanceMinEscape;
18035 Real Escape_DistanceMaxEscape;
18043 Integer Saunter_BaseChillingTime;
18047 Integer Saunter_ChillingTimeDelta;
18051 Real Saunter_Radius;
18059 Real Orbit_Radius;
18063 Boolean Orbit_IsClockWise;
18067 Boolean Scripted_ForceAimInMoveDir;
18071 Vec3 Follow_Offset;
18075 Boolean Follow_ForceAimInLeaderDir;
18079 Boolean Follow_HasLeader;
18083 CSmPlayer * Follow_Leader;
18087 Vec3 Follow_AnchorPoint;
18091 CSmPlayer * ForcedTarget;
18095 Array<CSmPlayer*> TargetsToAvoid;
18099 Boolean PredictJump;
18103 Boolean UsePathFinding;
18107 CSmMode::EActionInput OnStuckInput;
18111 Real MaxPathDivergence;
18154};
18155
18163public :
18167 Boolean const HasBeenPassed;
18171 Boolean const HasBeenDiscarded;
18172};
18173
18177class CSmMapGate : public CNod {
18178public :
18182 Integer Clan;
18186 Boolean Automatic;
18190 Boolean ManualClosed;
18194 Boolean const AutoClosed;
18198 Boolean AutoIsActive;
18202 Integer AutoCloseDelay;
18206 Integer AutoOpenSpeed;
18207};
18208
18212class CSmMapGauge : public CNod {
18213public :
18217 Integer Clan;
18225 Integer Value;
18229 Integer Max;
18233 Integer Speed;
18237 Boolean Captured;
18238};
18239
18243class CMapObjectAnchor : public CNod {
18244public :
18248 Text const ItemName;
18252 Ident const ItemModelId;
18253};
18254
18262class CPlaygroundClient : public CNod {
18263public :
18267 enum ESpectatorCameraType {
18268 Replay,
18269 Follow,
18270 Free,
18271 StandardCount,
18272 NotUsed0,
18273 NotUsed1,
18274 NotUsed2,
18275 NotUsed3,
18276 NotUsed4,
18277 NotUsed5,
18278 NotUsed6,
18279 NotUsed7,
18280 NotUsed8,
18281 NotUsed9,
18282 FollowForced,
18283 DontChange,
18284 };
18288 enum ESpectatorTargetType {
18289 None,
18290 Single,
18291 AllPlayers,
18292 AllMap,
18293 };
18297 CMap * const Map;
18301 Integer const GameTime;
18305 CUser * const LocalUser;
18309 CUIConfig * const UI;
18313 CServerInfo * const ServerInfo;
18317 Ident const SettingsPlayerModelId;
18321 Boolean const HasPodium;
18333 Boolean const UseClans;
18337 Boolean const UseForcedClans;
18341 Boolean const IsLoadingScreen;
18345 Boolean const IsServerOrSolo;
18349 Void QuitServer(Boolean Silent);
18353 Void QuitServerAndSetResult(Boolean Silent,Text Type,Array<Text> Data);
18357 Boolean const IsInGameMenuDisplayed;
18361 Void JoinTeam1();
18365 Void JoinTeam2();
18377 Void SetSpectateTarget(Text Player);
18381 Void ShowProfile(Text Player);
18389 Boolean SavePrevReplay(Text FileName);
18397 Void MapList_Request();
18401 CPlaygroundClient::ESpectatorCameraType GetSpectatorCameraType();
18405 CPlaygroundClient::ESpectatorTargetType GetSpectatorTargetType();
18409 Void SetWantedSpectatorCameraType(CPlaygroundClient::ESpectatorCameraType CameraType);
18413 Boolean const MapList_IsInProgress;
18417 Array<Text> MapList_Names;
18421 Array<Text> MapList_MapUids;
18425 Boolean const Request_IsInProgress;
18429 Boolean const Request_Success;
18433 Void RequestRestartMap();
18437 Void RequestNextMap();
18441 Void RequestGotoMap(Text MapUid);
18445 Void RequestSetNextMap(Text MapUid);
18449 Void RequestAutoTeamBalance();
18458 Text const Vote_Question;
18462 Boolean const Vote_CanVote;
18466 Void Vote_Cast(Boolean Answer);
18467};
18468
18477public :
18485 CPlaygroundClient * const Playground;
18489 CMap * const Map;
18493 CGhostManager * const GhostMgr;
18505 Integer const SplitScreenCount;
18513 CVoiceChatConfig * const VoiceChat;
18514};
18515
18519class CMlScript_ReadOnly : public CNod {
18520public :
18524 enum ESystemPlatform {
18525 None,
18526 Steam,
18527 UPlay,
18528 PS4,
18529 XBoxOne,
18530 PS5,
18531 XBoxSeries,
18532 Stadia,
18533 Luna,
18534 };
18538 enum ESystemSkuIdentifier {
18539 Unknown,
18540 EU,
18541 US,
18542 JP,
18543 CN,
18544 };
18548 CMlPage * Page;
18552 Boolean PageIsVisible;
18556 Boolean PageAlwaysUpdateScript;
18560 Integer Now;
18564 Integer Period;
18568 Integer CurrentTime;
18572 Text CurrentTimeText;
18576 Text CurrentLocalDateText;
18580 Text CurrentTimezone;
18584 CUser const * const LocalUser;
18588 CTitle const * const LoadedTitle;
18592 CMlScript_ReadOnly::ESystemPlatform SystemPlatform;
18596 CMlScript_ReadOnly::ESystemSkuIdentifier SystemSkuIdentifier;
18600 CParsingManager * Xml;
18604 CVideoManager * Video;
18608 CInputManager * Input;
18612 CAnimManager * AnimMgr;
18613};
18614
18619public :
18623 enum EFileType {
18624 Maps,
18625 Skins,
18626 Items,
18627 Blocks,
18628 Scripts,
18629 Images,
18630 Manialinks,
18631 Packs,
18632 Actions,
18633 Modules,
18634 Meshes,
18635 Replays,
18636 };
18640 enum EFileAction {
18641 Select,
18642 Save,
18643 MultiSelect,
18644 };
18648 Boolean const HasFinished;
18652 Array<Text> Selection;
18656 Void SetFileType(CModuleMenuFileBrowser::EFileType FileType);
18660 Void SetFileAction(CModuleMenuFileBrowser::EFileAction FileAction);
18661};
18662
18667public :
18671 Void Reset(CPlayer Player);
18672};
18673
18678public :
18682 Void Reset(CPlayer Player);
18683};
18684
18689public :
18693 Void Reset(CPlayer Player);
18697 Void SetGlobalScale(Real Scale);
18701 Void SetGaugeNumber(Integer Number);
18705 Void SetGaugeAngle(Real Angle);
18709 Void SetGaugeBGVisible(Boolean Visibility);
18713 Void SetSpeedLineVisible(Boolean Visibility);
18717 Void SetGaugeSpeedMax(Real Maximum);
18721 Void SetSpeedValueScale(Real Scale);
18725 Void SetSpeedUnitScale(Real Scale);
18729 Void SetFooterUnitVisible(Boolean Visibility);
18733 Void SetFooterLineVisible(Boolean Visibility);
18737 Void SetDistanceVisible(Boolean Visibility);
18741 Void SetDistanceFooterLineVisible(Boolean Visibility);
18742};
18743
18748public :
18752 Void StopChrono();
18756 Void StartChrono();
18760 Void Reset();
18764 Void Reset(CPlayer Player);
18765};
18766
18771public :
18775 enum EColumnType {
18776 CustomString,
18777 CustomNatural,
18778 CustomInteger,
18779 CustomReal,
18780 CustomTime,
18781 Avatar,
18782 Name,
18783 ManiaStars,
18784 Tools,
18785 Tags,
18786 TMBestTime,
18787 TMPrevTime,
18788 TMBestLapTime,
18789 TMStunts,
18790 TMRespawns,
18791 TMCheckpoints,
18792 TMPoints,
18793 TMPrevRaceDeltaPoints,
18794 SMPoints,
18795 SMRoundPoints,
18796 };
18800 enum EScoreSortOrder {
18801 Default,
18802 Name,
18803 LadderRanking,
18804 TMPoints,
18805 TMBestTime,
18806 TMBestLapTime,
18807 TMStunts,
18808 TMRespawns,
18809 TMCheckpoints,
18810 TMPrevTime,
18811 SMPoints,
18812 SMRoundPoints,
18813 };
18817 Void SetFooterText(Text FooterText);
18821 Void ResetCustomColumns(CScore Score);
18825 Void ResetCustomColumns();
18829 Void Scores_Sort(CModulePlaygroundScoresTable::EScoreSortOrder SortOrder);
18833 Void SetColumnValue(CScore Score,Text ColumnId,Text ColumnValue);
18837 Void SetColumnValue(CScore Score,Text ColumnId,Integer ColumnValue);
18841 Void SetColumnValue(CScore Score,Text ColumnId,Real ColumnValue);
18845 Void SetColumnVisibility(CModulePlaygroundScoresTable::EColumnType Type,Boolean Visibility);
18849 Void SetColumnVisibility(Text ColumnId,Boolean Visibility);
18853 Void SetColor(CScore Score,Vec3 Color);
18857 Void ResetColor(CScore Score);
18858};
18859
18864public :
18868 Integer AddItem(CPlayer Player,Text Url,Integer Quantity);
18872 Boolean AddAction(CPlayer Player,Text Url);
18876 Integer RemoveInventoryItem(CPlayer Player,Text Url,Integer Quantity);
18880 Integer GetInventoryItemQuantity(CPlayer Player,Text Url);
18884 Boolean IsInventoryItemStored(CPlayer Player,Text Url);
18888 Array<Text> GetStoredItemsList(CPlayer Player);
18892 Array<Text> GetStoredActionsList(CPlayer Player);
18893};
18894
18899public :
18903 Void Reset();
18907 Void Reset(CPlayer Player);
18911 Void SetMoney(CPlayer Player,Integer Amount);
18915 Integer GetMoney(CPlayer Player);
18919 Boolean AddMoney(CPlayer Player,Integer Amount);
18923 Boolean SubMoney(CPlayer Player,Integer Amount);
18927 Void SetActionLevel(CPlayer Player,Text ActionUrl,Integer ActionLevel);
18931 Integer GetActionLevel(CPlayer Player,Text ActionUrl);
18935 Void SetItemCanBeBought(CPlayer Player,Text ActionUrl,Boolean CanBeBought);
18939 Boolean GetItemCanBeBought(CPlayer Player,Text ActionUrl);
18940};
18941
18948class CEditorBase : public CNod {
18949public :
18950};
18951
18955class CModuleMenuModel : public CNod {
18956public :
18964 CModuleMenuPageModel AddPage(Text PageUrl);
18968 Void AddLink(CModuleMenuPageModel ParentPage,CModuleMenuPageModel ChildPage);
18972 Text MenuScript;
18973};
18974
18979public :
18983 Text ManialinkText;
18984};
18985
18990public :
18994 Ident ContextAdd(Text ContextName);
18998 Ident ContextSetId(Ident ContextId,Text NewContextName);
19002 Void ContextRemove(Ident ContextId);
19006 Array<Ident> ContextsIds;
19010 Array<CHudModule* const > SubModules;
19014 CHudModule NewSubModule(Text ModulePath);
19018 Void DeleteSubModule(CHudModule SubModule);
19022 Boolean SubModuleIsContextActive(CHudModule SubModule,Ident ContextId);
19026 Void SubModuleSetContextIsActive(CHudModule SubModule,Ident ContextId,Boolean IsActive);
19030 Integer const EditorContextIndex;
19031};
19032
19040public :
19044 enum Type {
19045 LayerCustomEvent,
19046 KeyPress,
19047 (reserved),
19048 MenuNavigation,
19049 Exit,
19050 FileNew,
19051 FileOpen,
19052 FileSave,
19053 FileSaveAs,
19054 };
19058 CEditorPluginModuleEvent::Type const Type;
19062 Void Eat();
19063};
19064
19072public :
19073};
19074
19078class CImage : public CNod {
19079public :
19080};
19081
19089public :
19093 enum Type {
19094 LayerCustomEvent,
19095 KeyPress,
19096 (reserved),
19097 MenuNavigation,
19098 FileChanged,
19099 Exit,
19100 FileSave,
19101 OnUndo,
19102 OnRedo,
19103 OnSwitchedBack,
19104 CameraButtonOn,
19105 CameraButtonOff,
19106 VoxelUpdateMaterial,
19107 OpenUVEditor,
19108 CloseUVEditor,
19109 EnableUndo,
19110 DisableUndo,
19111 EnableRedo,
19112 DisableRedo,
19113 UpdateUI,
19114 UpdateSliders,
19115 UpdateMaterialsLibPage,
19116 MediaTrackerPopUp,
19117 HideUI,
19118 ShowUI,
19119 EnableFullScreen,
19120 DisableFullScreen,
19121 Autosave,
19122 };
19126 CEditorEvent::Type const Type;
19127};
19128
19132class CEditorPluginAPI : public CNod {
19133public :
19137 enum EEditorFileToolBar_QuadType {
19138 Quit,
19139 New,
19140 Open,
19141 SaveAs,
19142 Save,
19143 Import,
19144 Export,
19145 Close,
19146 Help,
19147 };
19151 Void NewFile();
19155 Void Undo();
19159 Void Redo();
19163 Void FileToolBarSendCmd(Text CmdName);
19167 Boolean SetToolBarButtonVisible(CEditorPluginAPI::EEditorFileToolBar_QuadType Type);
19168};
19169
19173class CMediaTrackerClip : public CNod {
19174public :
19178 Text Name;
19186 Boolean StopWhenRespawn;
19190 Boolean StopWhenLeave;
19194 Boolean TriggersBeforeRaceStart;
19195};
19196
19201public :
19206};
19207
19211class CMediaTrackerTrack : public CNod {
19212public :
19216 Text Name;
19221};
19222
19226class CMatchSettings : public CNod {
19227public :
19231 Text const Name;
19235 Text const FileName;
19239 Text ScriptModeName;
19243 Boolean ScriptModeName_Check(Text ScriptModeName);
19247 Void ScriptModeName_Set(Text ScriptModeName);
19251 Void ScriptSettings_SetToDefault();
19259 Boolean Playlist_FileExists(Text File);
19263 Boolean Playlist_FileMatchesMode(Text File);
19267 Void Playlist_Add(Text File);
19271 Void Playlist_Remove(Integer Index);
19275 Void Playlist_SwapUp(Integer Index);
19279 Void Playlist_SwapDown(Integer Index);
19280};
19281
19289class CManiaAppBase : public CManiaApp {
19290public :
19294 Array<CManiaAppEvent* const > PendingEvents;
19295};
19296
19301public :
19305 Ident const TitleId;
19309 Ident const MakerTitleId;
19313 Text DisplayName;
19317 Text Description;
19321 Text InfoUrl;
19325 Text DownloadUrl;
19329 Text TitleVersion;
19333 Text AllowedClientTitleVersion;
19337 Text BaseTitleIds;
19341 Text ForcedPlayerModel;
19345 Text Packaging_ImageFileName;
19349 Text Packaging_LogosFileName;
19353 Text Packaging_Group;
19361 Text Menus_BgReplayFileName;
19365 Text Menus_ManiaAppFileName;
19369 Text Menus_MusicFileName;
19377 Text FallbackFontFileName;
19381 Text Hud3dFontFileName;
19385 Text HudDefaultModuleScriptName;
19389 Text MusicFolder;
19393 Text Editor_MusicFileName;
19394};
19395
19399class CMlGraphCurve : public CNod {
19400public :
19404 Array<Vec2> Points;
19408 Vec3 Color;
19412 Void SortPoints();
19416 Text Style;
19421};
19422
19429class CMlFileEntry : public CMlEntry {
19430public :
19434 Boolean OnlyUserFiles;
19438 Void ClearFileNames();
19442 Text const FullFileName;
19446 Text const RelativeNameToRoot;
19450 Text const RelativeNameToTypeFolder;
19451};
19452
19456class CParsingNode : public CNod {
19457public :
19461 Text const Name;
19465 Text const TextContents;
19469 Text const TextRawContents;
19473 Text const TextRecursiveContents;
19481 Text GetAttributeText(Text Name,Text DefaultValue);
19485 Integer GetAttributeInteger(Text Name,Integer DefaultValue);
19489 Real GetAttributeReal(Text Name,Real DefaultValue);
19493 Boolean GetAttributeBoolean(Text Name,Boolean DefaultValue);
19497 CParsingNode GetFirstChild(Text Name);
19498};
19499
19503class CMapGroup : public CNod {
19504public :
19508 Array<CMapInfo* const > MapInfos;
19509};
19510
19520
19525public :
19529 Text const ActivityId;
19533 Integer const CreationTimeStamp;
19537 Text const CreatorAccountId;
19541 Text const CreatorWebServicesUserId;
19545 Text const CreatorDisplayName;
19549 Boolean const CreatorIsFirstPartyDisplayName;
19553 Text const ClubId;
19557 CNadeoServicesItemCollectionVersion * CurrentVersion;
19561 Text const DisplayName;
19565 Boolean const HasVersionList;
19569 Text const Id;
19573 Boolean const IsCurrentVersionNull;
19577 Text const Name;
19581 Text const Type;
19585 Integer const UpdateTimeStamp;
19590};
19591
19601
19609public :
19610};
19611
19615class CNadeoServicesMap : public CNod {
19616public :
19620 Text const AuthorAccountId;
19624 Text const AuthorWebServicesUserId;
19628 Text const AuthorDisplayName;
19632 Boolean const AuthorIsFirstPartyDisplayName;
19636 Integer const AuthorScore;
19640 Integer const BronzeScore;
19644 Text const CollectionName;
19648 Boolean const CreatedWithGamepadEditor;
19652 Boolean const CreatedWithSimpleEditor;
19656 Text const FileName;
19660 Text const FileUrl;
19664 Integer const GoldScore;
19668 Text const Id;
19672 Boolean const IsPlayable;
19676 Text const Name;
19680 Integer const SilverScore;
19684 Text const Style;
19688 Text const SubmitterAccountId;
19692 Text const SubmitterWebServicesUserId;
19696 Text const ThumbnailUrl;
19700 Integer const TimeStamp;
19704 Text const Type;
19708 Text const Uid;
19709};
19710
19718public :
19719};
19720
19728public :
19729};
19730
19734class CNadeoServicesSkin : public CNod {
19735public :
19739 Text const Checksum;
19743 Text const CreatorAccountId;
19747 Text const CreatorWebServicesUserId;
19751 Text const CreatorDisplayName;
19755 Boolean const CreatorIsFirstPartyDisplayName;
19759 Text const DisplayName;
19763 Text const FileName;
19767 Text const FileUrl;
19771 Text const Id;
19775 Text const Name;
19779 Text const ThumbnailUrl;
19783 Integer const TimeStamp;
19787 Text const Type;
19788};
19789
19797public :
19798};
19799
19803class CReplayInfo : public CNod {
19804public :
19808 Text const MapUid;
19812 Text const Name;
19816 Text const Path;
19820 Text const FileName;
19821};
19822
19827public :
19831 Text const Name;
19835 Text const Path;
19839 Text const Description;
19843 Text const Version;
19847 Array<Text> CompatibleMapTypes;
19848};
19849
19857public :
19858};
19859
19863class CMapRecord : public CNod {
19864public :
19868 Text const AccountId;
19872 Text const WebServicesUserId;
19876 Text const MapId;
19880 Ident const MapUid;
19884 Text const ScopeType;
19888 Text const ScopeId;
19892 Text const GameMode;
19896 Text const GameModeCustomData;
19900 Integer const Score;
19904 Integer const Time;
19908 Integer const RespawnCount;
19912 Integer const Timestamp;
19916 Integer const Medal;
19920 Integer const MultiAsyncLevel;
19924 Integer const SkillPoints;
19928 Text const FileName;
19932 Text const ReplayUrl;
19933};
19934
19942public :
19943};
19944
19948class CSeason : public CNod {
19949public :
19953 Text const CreatorAccountId;
19957 Text const CreatorWebServicesUserId;
19961 Text const GameMode;
19965 Text const GameModeCustomData;
19969 Text const MapRecordType;
19973 Text const Id;
19977 Text const Name;
19981 Integer const CreationTimeStamp;
19985 Integer const StartTimeStamp;
19989 Integer const EndTimeStamp;
19993 Array<CSeasonMapInfo*> MapInfoList;
19994};
19995
20003public :
20004};
20005
20013public :
20014};
20015
20025
20030public :
20034 Text const AccountId;
20038 Text const WebServicesUserId;
20042 Integer const T1Count;
20046 Integer const T2Count;
20050 Integer const T3Count;
20054 Integer const T4Count;
20058 Integer const T5Count;
20062 Integer const T6Count;
20066 Integer const T7Count;
20070 Integer const T8Count;
20074 Integer const T9Count;
20078 Integer const TimeStamp;
20079};
20080
20090
20095public :
20099 Text const Type;
20103 CTrophySoloMedalAchievementLevelSettings * AllBronzeLevelSettings;
20107 CTrophySoloMedalAchievementLevelSettings * AllSilverLevelSettings;
20111 CTrophySoloMedalAchievementLevelSettings * AllGoldLevelSettings;
20115 CTrophySoloMedalAchievementLevelSettings * AllAuthorLevelSettings;
20116};
20117
20125public :
20126};
20127
20131class CZone : public CNod {
20132public :
20136 Text const Id;
20140 Text const Name;
20144 Text const ParentId;
20148 Text const Path;
20152 Text const FullPath;
20156 Text const FlagUrl;
20160 Text const CountryFlagUrl;
20164 Text const Model_CarSport_SkinName;
20168 Text const Model_CarSport_SkinUrl;
20172 Text const Model_CharacterPilot_SkinName;
20176 Text const Model_CharacterPilot_SkinUrl;
20177};
20178
20182class CVehicleSettings : public CNod {
20183public :
20187 Text const ModelDisplayName;
20191 Text const ModelName;
20199 Text const SkinUrl;
20211 Boolean InvertSteer;
20215 Boolean AccelIsToggleMode;
20219 Boolean BrakeIsToggleMode;
20227 Boolean HapticFeedbackEnabled;
20232};
20233
20241public :
20242};
20243
20247class CFriend : public CNod {
20248public :
20252 Text const AccountId;
20256 Text const CountryFlagUrl;
20260 Text const DisplayName;
20264 Boolean const IsFirstPartyDisplayName;
20268 Text const PlatformType;
20272 Text const Presence;
20276 Text const Relationship;
20280 Text const WebServicesUserId;
20281};
20282
20290public :
20291};
20292
20296class CNews : public CNod {
20297public :
20301 Text const Id;
20305 Text const Type;
20309 Text const Placement;
20313 Text const Locale;
20317 Text const Title;
20321 Text const Body;
20325 Text const MediaUrl;
20329 Text const MediaType;
20333 Text const PublicationDate;
20337 Integer const Priority;
20341 Integer const DisplayTime;
20345 Array<CNewsLink*> LinkList;
20346};
20347
20355public :
20356};
20357
20361class CUserPrestige : public CNod {
20362public :
20366 Text const CategoryType;
20370 Integer const CategoryLevel;
20374 NWebServicesPrestige::EPrestigeMode const Mode;
20378 Text const PrestigeId;
20382 Integer const PrestigeLevel;
20386 Text const SkinOptions;
20390 Integer const TimeStamp;
20394 Integer const Year;
20395};
20396
20404public :
20405};
20406
20414public :
20415};
20416
20420class CPrestige : public CNod {
20421public :
20425 Text const CategoryType;
20429 Integer const CategoryLevel;
20433 Boolean const IsUnlocked;
20437 NWebServicesPrestige::EPrestigeMode const Mode;
20441 Text const PrestigeId;
20445 Integer const PrestigeLevel;
20449 Text const RewardDisplayName;
20453 Text const RewardFileUrl;
20457 Text const RewardThumbnailUrl;
20461 Text const RewardType;
20465 Text const SkinOptions;
20469 Integer const StatCurrentValue;
20473 Integer const StatValueForNextLevel;
20477 Integer const TimeStamp;
20481 Integer const Year;
20482};
20483
20491public :
20492};
20493
20497class CSquad : public CNod {
20498public :
20502 Integer const CreationTimeStamp;
20506 Text const LeaderAccountId;
20510 Text const LeaderWebServicesUserId;
20514 Text const Id;
20518 Boolean const IsLocked;
20522 Text const Name;
20526 Integer const Size;
20530 Text const Type;
20534 Integer const UpdateTimeStamp;
20538 Array<CSquadInvitation*> InvitationList;
20542 Array<CSquadMember*> MemberList;
20543};
20544
20552public :
20553};
20554
20558class CPackCreator : public CNod {
20559public :
20567 Boolean const RegisterPack_IsInProgess;
20571 CPackCreatorPack * const CurrentPack;
20579 Void Build_AddFile(Ident BuildId,Text FileName);
20583 Void Build_AddFolder(Ident BuildId,Text FolderName);
20587 Void Build_AddFile(Ident BuildId,Text FileName,Boolean IsPublic,Boolean IsInternal,Boolean NoAutomaticDeps);
20591 Void Build_AddFolder(Ident BuildId,Text FolderName,Boolean IsPublic,Boolean IsInternal,Boolean NoRecursion,Boolean NoAutomaticDeps);
20595 Void Build_Generate(Ident BuildId,Boolean Upload);
20599 Boolean Build_IsGenerated(Ident BuildId);
20603 Text Build_ErrorMessage(Ident BuildId);
20607 Void Build_End(Ident BuildId);
20608};
20609
20614public :
20618 enum EType {
20619 NewNotification,
20620 NotificationChanged,
20621 };
20625 CNotificationsConsumerEvent::EType const Type;
20630};
20631
20636public :
20640 enum ENotificationPriority {
20641 Memo,
20642 Notice,
20643 Alarm,
20644 };
20648 Text const Title;
20652 Text const Description;
20656 Text const ImageUrl;
20660 CNotificationsConsumerNotification::ENotificationPriority const Priority;
20664 Boolean const HasBeenRead;
20668 Boolean const HasBeenActivated;
20677};
20678
20682class CBlockUnit : public CNod {
20683public :
20687 Int3 const AbsoluteOffset;
20691 CBlockUnitModel * const BlockUnitModel;
20695 CBlock * const Block;
20696};
20697
20702public :
20710 Boolean const HasChildDirectory;
20714 Boolean const HasChildArticle;
20715};
20716
20721public :
20725 Text const NodeName;
20729 Boolean const IsDirectory;
20733 CMapEditorInventoryDirectory * const ParentNode;
20737 CNod GetCollectorNod();
20738};
20739
20744public :
20745};
20746
20750class CCollector : public CNod {
20751public :
20755 Text const Name;
20759 Text PageName;
20763 Integer InterfaceNumber;
20767 CImage * const Icon;
20771 Text const SkinDirectory;
20772};
20773
20778public :
20779};
20780
20785public :
20786};
20787
20791class CMapSector : public CNod {
20792public :
20796 Array<Ident> PlayersIds;
20800 Text const Tag;
20801};
20802
20810public :
20811};
20812
20816class CActionInterface : public CNod {
20817public :
20821 Integer const Cooldown;
20825 Integer const CooldownStartTime;
20829 Integer const Energy;
20833 Integer const EnergyCost;
20837 Integer const EnergyMax;
20838};
20839
20848public :
20856 Boolean HoldLoadingScreen;
20857};
20858
20866public :
20870 enum Type {
20871 LayerCustomEvent,
20872 KeyPress,
20873 (reserved),
20874 MenuNavigation,
20875 PlaygroundScriptEvent,
20876 GhostAdded,
20877 RecordUpdated,
20878 RecordsUpdated,
20879 OnPlayerTriggerSpecial,
20880 OnPlayerTriggerWaypoint,
20881 };
20885 enum GameplaySpecialType {
20886 None,
20887 Turbo,
20888 Turbo2,
20889 TurboRoulette,
20890 FreeWheeling,
20891 NoGrip,
20892 NoSteering,
20893 ForceAcceleration,
20894 Reset,
20895 SlowMotion,
20896 Bumper,
20897 Bumper2,
20898 ReactorBoost_Legacy,
20899 Fragile,
20900 ReactorBoost2_Legacy,
20901 Bouncy,
20902 NoBrakes,
20903 Cruise,
20904 ReactorBoost_Oriented,
20905 ReactorBoost2_Oriented,
20906 VehicleTransform_Reset,
20907 VehicleTransform_CarSnow,
20908 VehicleTransform_CarRally,
20909 VehicleTransform_CarDesert,
20910 XXX Null,
20911 };
20915 enum GameplayTurboRoulette {
20916 TurboRoulette_None,
20917 TurboRoulette_1,
20918 TurboRoulette_2,
20919 TurboRoulette_3,
20920 };
20924 CManiaAppPlaygroundEvent::Type const PlaygroundType;
20928 Text const PlaygroundScriptEventType;
20932 Array<Text> PlaygroundScriptEventData;
20936 CGhost * const Ghost;
20940 CManiaAppPlaygroundEvent::GameplaySpecialType const GameplaySpecialType;
20944 CManiaAppPlaygroundEvent::GameplayTurboRoulette const GameplayTurboRoulette;
20948 Boolean const IsBoostUpElseDown;
20952 Integer const WaypointLandmarkIndex;
20956 Integer const RaceWaypointTime;
20960 Integer const DiffWithBestRace;
20964 Boolean const DiffWithBestRace_IsValid;
20968 Integer const LapWaypointTime;
20972 Integer const DiffWithBestLap;
20976 Boolean const DiffWithBestLap_IsValid;
20980 Boolean const IsFinish;
20984 Boolean const IsNewLap;
20988 Integer const RaceWaypointCount;
20992 Integer const LapWaypointCount;
20993};
20994
20998class CHudModule : public CNod {
20999public :
21003 Text ModuleName;
21007 Real PosX;
21011 Real PosY;
21015 Real ZIndex;
21019 Real Scale;
21023 Text const ModulePath;
21024};
21025
21029class CMediaTrackerBlock : public CNod {
21030public :
21034 Real Start;
21038 Real End;
21042 Real GetKeyTime(Integer KeyIndex);
21046 Integer GetKeysCount();
21047};
21048
21053public :
21057 Text const Name;
21062};
21063
21068public :
21072 Text const Checksum;
21076 Integer const CreationTimeStamp;
21080 Text const Id;
21084 Integer const UpdateTimeStamp;
21088 Text const Url;
21089};
21090
21094class CSeasonMapInfo : public CNod {
21095public :
21099 Text const MapId;
21103 Ident const MapUid;
21107 Integer const BronzeScore;
21111 Integer const SilverScore;
21115 Integer const GoldScore;
21119 Integer const AuthorScore;
21123 Integer const TimeStamp;
21124};
21125
21130public :
21134 Text const Level;
21138 Integer const T1Count;
21142 Integer const T2Count;
21146 Integer const T3Count;
21150 Integer const T4Count;
21154 Integer const T5Count;
21158 Integer const T6Count;
21162 Integer const T7Count;
21166 Integer const T8Count;
21170 Integer const T9Count;
21171};
21172
21176class CNewsLink : public CNod {
21177public :
21181 Text const Type;
21185 Text const Param;
21189 Text const ActionName;
21193 Text const ActionDescription;
21194};
21195
21199class CSquadInvitation : public CNod {
21200public :
21204 Text const AccountId;
21208 Text const CountryFlagUrl;
21212 Text const DisplayName;
21216 Boolean const IsFirstPartyDisplayName;
21220 Text const PrestigeSkinOptions;
21224 Array<CSkinInfo*> SkinList;
21225};
21226
21230class CSquadMember : public CNod {
21231public :
21235 Text const AccountId;
21239 Text const CountryFlagUrl;
21243 Text const DisplayName;
21247 Boolean const IsFirstPartyDisplayName;
21251 Text const PrestigeSkinOptions;
21255 Array<CSkinInfo*> SkinList;
21256};
21257
21261class CPackCreatorPack : public CNod {
21262public :
21270 Ident const CreatorId;
21274 Boolean const IsTitlePack;
21278 Void Recipients_Add(Text Login,Integer UseCost,Integer GetCost);
21282 Void Recipients_Remove(Text Login);
21287};
21288
21292class CBlockUnitModel : public CNod {
21293public :
21297 Int3 const RelativeOffset;
21302};
21303
21307class CBlockModelVariant : public CNod {
21308public :
21312 Text Name;
21316 Boolean const IsAllUnderground;
21320 Boolean const IsPartUnderground;
21324 Int3 const Size;
21328 Int3 const OffsetBoundingBoxMin;
21332 Int3 const OffsetBoundingBoxMax;
21336 Array<CBlockUnitModel* const > BlockUnitModels;
21337};
21338
21343public :
21356};
21357
21362public :
21363};
21364
21368namespace MathLib {
21369
21370 const Real Pi = 3.14159;
21371 const Real Tau = 6.28319;
21375 Integer Abs(Integer _Argument1);
21379 Real Abs(Real _Argument1);
21383 Real ToReal(Integer _Argument1);
21399 Real Sin(Real _Argument1);
21403 Real Cos(Real _Argument1);
21407 Real Tan(Real _Argument1);
21411 Real Atan2(Real _Argument1, Real _Argument2);
21415 Real Exp(Real _Argument1);
21419 Real Rand(Real _Argument1, Real _Argument2);
21423 Real Rand(Real _Argument1, Real _Argument2, Integer _Argument3);
21427 Integer Rand(Integer _Argument1, Integer _Argument2);
21431 Integer Rand(Integer _Argument1, Integer _Argument2, Integer _Argument3);
21435 Real NearestReal(Integer _Argument1);
21439 Integer NearestInteger(Real _Argument1);
21443 Integer FloorInteger(Real _Argument1);
21447 Integer TruncInteger(Real _Argument1);
21451 Integer CeilingInteger(Real _Argument1);
21455 Real Distance(Real _Argument1, Real _Argument2);
21461 Real Distance(Vec2 _Argument1, Vec2 _Argument2);
21467 Real Distance(Vec3 _Argument1, Vec3 _Argument2);
21473 Real Length(Vec2 _Argument1);
21479 Real Length(Vec3 _Argument1);
21485 Real Norm0(Vec2 _Argument1);
21491 Real Norm1(Vec2 _Argument1);
21497 Real Norm0(Vec3 _Argument1);
21503 Real Norm1(Vec3 _Argument1);
21509 Integer Norm0(Int2 _Argument1);
21515 Integer Norm1(Int2 _Argument1);
21521 Integer Norm0(Int3 _Argument1);
21527 Integer Norm1(Int3 _Argument1);
21531 Real DotProduct(Vec3 _Argument1, Vec3 _Argument2);
21535 Vec3 CrossProduct(Vec3 _Argument1, Vec3 _Argument2);
21539 Real DotProduct(Vec2 _Argument1, Vec2 _Argument2);
21543 Integer DotProduct(Int3 _Argument1, Int3 _Argument2);
21547 Int3 CrossProduct(Int3 _Argument1, Int3 _Argument2);
21551 Integer DotProduct(Int2 _Argument1, Int2 _Argument2);
21555 Real Angle(Vec3 _Argument1, Vec3 _Argument2);
21559 Real OrientedAngle(Vec3 _Argument1, Vec3 _Argument2);
21565 Real Angle(Real _Radian1, Real _Radian2);
21569 Real Angle(Vec2 _Argument1, Vec2 _Argument2);
21573 Real OrientedAngle(Vec2 _Argument1, Vec2 _Argument2);
21577 Real PI();
21581 Real Asin(Real _Argument1);
21585 Real Acos(Real _Argument1);
21589 Real Pow(Real _Argument1, Real _Argument2);
21593 Real Ln(Real _Argument1);
21597 Real Sqrt(Real _Argument1);
21633 Real Clamp(Real _X, Real _Min, Real _Max);
21639 Real Mod(Real _X, Real _Min, Real _Max);
21657 Vec2 Clamp(Vec2 _X, Vec2 _Min, Vec2 _Max);
21675 Vec3 Clamp(Vec3 _X, Vec3 _Min, Vec3 _Max);
21693 Int2 Clamp(Int2 _X, Int2 _Min, Int2 _Max);
21711 Int3 Clamp(Int3 _X, Int3 _Min, Int3 _Max);
21712};
21713
21717namespace TextLib {
21718
21757 Text SubString(Text _Text, Integer _Start, Integer _Length);
21769 Text SubText(Text _Text, Integer _Start, Integer _Length);
21836 Text TimeToText(Integer _Time, Boolean _IncludeCentiSeconds);
21852 Text TimeToText(Integer _Time, Boolean _IncludeCentiSeconds, Boolean _IncludeMilliSeconds);
21863 Text FormatInteger(Integer _Argument1, Integer _Argument2);
21870 Text FormatInteger(Integer _Value, Integer _MinLength, Boolean _WithSeparator);
21876 Text FormatRank(Integer _Rank, Boolean _ShortFormat);
21886 Text FormatReal(Real _Value, Integer _FPartLength, Boolean _HideZeroes, Boolean _HideDot);
21892 Text ToUpperCase(Text _TextToChange);
21898 Text ToLowerCase(Text _TextToChange);
21914 Boolean CompareWithoutFormat(Text _Text1, Text _Text2, Boolean _IsCaseSensitive);
21927 Boolean Find(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
21935 Boolean EndsWith(Text _TextToFind, Text _TextToSearchIn);
21945 Boolean EndsWith(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
21953 Boolean StartsWith(Text _TextToFind, Text _TextToSearchIn);
21963 Boolean StartsWith(Text _TextToFind, Text _TextToSearchIn, Boolean _IsFormatSensitive, Boolean _IsCaseSensitive);
21967 Text Compose(Text _Argument1);
21971 Text Compose(Text _Argument1, Text _Argument2);
21975 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3);
21979 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3, Text _Argument4);
21983 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3, Text _Argument4, Text _Argument5);
21987 Text Compose(Text _Argument1, Text _Argument2, Text _Argument3, Text _Argument4, Text _Argument5, Text _Argument6);
21991 Text MLEncode(Text _Argument1);
21995 Text URLEncode(Text _Argument1);
21999 Text StripFormatting(Text _Argument1);
22007 Array<Text> Split(Text _Separators, Text _Text);
22016 Array<Text> Split(Text _Separators, Text _Text, Boolean _MergeSeparators);
22024 Text Join(Text _Separator, Array<Text> _Texts);
22028 Text Trim(Text _Argument1);
22032 Text ReplaceChars(Text _Argument1, Text _Argument2, Text _Argument3);
22041 Text Replace(Text _Text, Text _ToReplace, Text _Replacement);
22050 Array<Text> RegexFind(Text _Pattern, Text _Text, Text _Flags);
22059 Array<Text> RegexMatch(Text _Pattern, Text _Text, Text _Flags);
22069 Text RegexReplace(Text _Pattern, Text _Text, Text _Flags, Text _Replacement);
22078};
22079
22083namespace MapUnits {
22084
22088 CMapEditorPlugin::CardinalDirections GetNextDir(CMapEditorPlugin::CardinalDirections _Argument1);
22092 CMapEditorPlugin::CardinalDirections GetPreviousDir(CMapEditorPlugin::CardinalDirections _Argument1);
22096 CMapEditorPlugin::CardinalDirections GetOpposedDir(CMapEditorPlugin::CardinalDirections _Argument1);
22100 CMapEditorPlugin::CardinalDirections AddDirs(CMapEditorPlugin::CardinalDirections _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22104 CMapEditorPlugin::CardinalDirections SubDirs(CMapEditorPlugin::CardinalDirections _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22108 Int3 GetNeighbourCoord(Int3 _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22112 Int3 GetRotatedOffset(Int3 _Argument1, CMapEditorPlugin::CardinalDirections _Argument2);
22116 Int3 GetRotatedOffsetPositive(Int3 _Argument1, CMapEditorPlugin::CardinalDirections _Argument2, Int3 _Argument3);
22117};
22118
22122namespace AnimLib {
22123
22135 Real Ease(Text _Function, Real _T, Real _Base, Real _Change, Real _Duration);
22141 Real EaseLinear(Integer _T, Real _Base, Real _Change, Integer _Duration);
22147 Real EaseInQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
22153 Real EaseOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
22159 Real EaseInOutQuad(Integer _T, Real _Base, Real _Change, Integer _Duration);
22165 Real EaseInCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22171 Real EaseOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22177 Real EaseInOutCubic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22183 Real EaseInQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
22189 Real EaseOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
22195 Real EaseInOutQuart(Integer _T, Real _Base, Real _Change, Integer _Duration);
22201 Real EaseInQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
22207 Real EaseOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
22213 Real EaseInOutQuint(Integer _T, Real _Base, Real _Change, Integer _Duration);
22219 Real EaseInSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
22225 Real EaseOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
22231 Real EaseInOutSine(Integer _T, Real _Base, Real _Change, Integer _Duration);
22237 Real EaseInExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
22243 Real EaseOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
22249 Real EaseInOutExp(Integer _T, Real _Base, Real _Change, Integer _Duration);
22255 Real EaseInCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
22261 Real EaseOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
22267 Real EaseInOutCirc(Integer _T, Real _Base, Real _Change, Integer _Duration);
22273 Real EaseInBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
22279 Real EaseOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
22285 Real EaseInOutBack(Integer _T, Real _Base, Real _Change, Integer _Duration);
22291 Real EaseInElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22297 Real EaseOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22303 Real EaseInOutElastic(Integer _T, Real _Base, Real _Change, Integer _Duration);
22309 Real EaseInElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
22315 Real EaseOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
22321 Real EaseInOutElastic2(Integer _T, Real _Base, Real _Change, Integer _Duration);
22327 Real EaseInBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
22333 Real EaseOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
22339 Real EaseInOutBounce(Integer _T, Real _Base, Real _Change, Integer _Duration);
22340};
22341
22345namespace TimeLib {
22346
22350 enum EDateFormats {
22351 Full,
22352 Date,
22353 DateCompact,
22354 DateShort,
22355 Time,
22356 TimeShort,
22357 Relative,
22358 RelativeShort,
22359 MonthYear,
22360 };
22364 enum EDurationFormats {
22365 Full,
22366 Abbreviated,
22367 Chrono,
22368 };
22376 Text FormatDate(Text _Timestamp, EDateFormats _Format);
22385 Text FormatDelta(Text _Timestamp1, Text _Timestamp2, EDurationFormats _Format);
22393 Text FormatDelta(Text _Delta, EDurationFormats _Format);
22401 Integer Compare(Text _Timestamp1, Text _Timestamp2);
22410 Real Clamp01(Text _Boundary1, Text _Boundary2, Text _Timestamp);
22438 Integer GetDelta(Text _Timestamp1, Text _Timestamp2);
22446 Integer GetLocalDelta_Years(Text _Timestamp1, Text _Timestamp2);
22454 Integer GetLocalDelta_Months(Text _Timestamp1, Text _Timestamp2);
22461};
22462
22466namespace ColorLib {
22467
22471 Vec3 HsvToRgb(Vec3 _Hsv);
22475 Vec3 RgbToHsv(Vec3 _Rgb);
22515};
22516
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:8518
Documentation for class CAccountTrophyLastYearSummary.
Definition doc.h:20029
Documentation for class CAction.
Definition doc.h:10261
Documentation for class CActionInterface.
Definition doc.h:20816
Documentation for class CActionManager.
Definition doc.h:17792
Landmark of a map.
Definition doc.h:16505
Documentation for class CAnimManager.
Definition doc.h:5287
API for editor plugins.
Definition doc.h:7193
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:10679
Real VoiceChat_VoiceDetection_Sensitivity
Definition doc.h:10736
Documentation for class CAudioSource.
Definition doc.h:14557
Documentation for class CAudioSourceMusic.
Definition doc.h:14612
Real LPF_Q
Definition doc.h:14678
Real LPF_CutoffRatio
Definition doc.h:14674
Real HPF_CutoffRatio
Definition doc.h:14682
Real HPF_Q
Definition doc.h:14686
An event.
Definition doc.h:13711
Boolean HasBeenProcessed
Definition doc.h:13716
An event.
Definition doc.h:18162
Documentation for class CBlockClip.
Definition doc.h:16773
Documentation for class CBlockClipList.
Definition doc.h:16722
Documentation for class CBlock.
Definition doc.h:16435
The model of a map block.
Definition doc.h:21361
The model of a map block.
Definition doc.h:16618
Documentation for class CBlockModelVariantAir.
Definition doc.h:20784
Documentation for class CBlockModelVariantGround.
Definition doc.h:20777
Documentation for class CBlockModelVariant.
Definition doc.h:21307
A 1-square-sized part of a block instance.
Definition doc.h:20682
A 1-square-sized part of a block model.
Definition doc.h:21292
Documentation for class CCampaign.
Definition doc.h:14955
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:7352
Boolean const IsConnectedToMasterServer
Definition doc.h:7365
Integer const IdleDuration
Definition doc.h:7381
Documentation for class CCollector.
Definition doc.h:20750
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:4843
Array< CGhost *const > Ghosts
Definition doc.h:4771
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:4847
CTaskResult_GhostList Replay_Load(Text Path)
Void Media_RefreshFromDisk(CDataFileMgr::EMediaType Type, Integer Scope)
Documentation for class CEditorAsset.
Definition doc.h:19071
Documentation for class CEditorBase.
Definition doc.h:18948
Documentation for class CEditorEditor.
Definition doc.h:12211
An event.
Definition doc.h:19088
API for editor plugins.
Definition doc.h:454
Documentation for class CEditorMediaTracker.
Definition doc.h:12278
API for the mesh modeler.
Definition doc.h:10905
Documentation for class CEditorModule.
Definition doc.h:10806
Documentation for class CEditorPluginAPI.
Definition doc.h:19132
Documentation for class CEditorPluginHandle.
Definition doc.h:7239
An event.
Definition doc.h:19039
Documentation for class CEditorSkin.
Definition doc.h:12764
Documentation for class CEntity.
Definition doc.h:10050
Ident const MarkerId
Definition doc.h:10055
Documentation for class CFriend.
Definition doc.h:20247
Documentation for class CGameItemModel.
Definition doc.h:16715
API for Maniaplanet client scripts.
Definition doc.h:5572
This is the Manialink browser interface.
Definition doc.h:3620
CMap *const CurMap
Definition doc.h:3625
Documentation for class CGameUserVoiceChat.
Definition doc.h:10619
A ghost model.
Definition doc.h:8436
Ident const Id
Definition doc.h:8441
CTmRaceResultNod *const Result
Definition doc.h:8445
Text Nickname
Definition doc.h:8449
Text Trigram
Definition doc.h:8453
The ghosts manager.
Definition doc.h:10151
Void Ghost_SetDossard(Ident GhostInstanceId, Text Dossard, Vec3 Color)
Void Ghost_SetDossard(Ident GhostInstanceId, Text Dossard)
An HTTP event.
Definition doc.h:14466
CHttpRequest *const Request
Definition doc.h:14481
Manager for HTTP requests.
Definition doc.h:4264
CHttpRequest CreateGet(Text Url)
An HTTP request.
Definition doc.h:14443
Integer const StatusCode
Definition doc.h:14456
Text const Url
Definition doc.h:14448
Text const Result
Definition doc.h:14452
Documentation for class CHudModule.
Definition doc.h:20998
Documentation for class CImage.
Definition doc.h:19078
Documentation for class CInputEvent.
Definition doc.h:14724
Input devices.
Definition doc.h:4450
Integer const TimeSinceLatestActivity
Definition doc.h:4580
game controller.
Definition doc.h:14791
Real const RightStickY
Definition doc.h:14925
Void SetColor(Vec3 Color)
Real const R2
Definition doc.h:14933
Real const RightStickX
Definition doc.h:14921
Void AddRumble(Integer Duration, Real LargeMotor, Real SmallMotor)
Real const LeftStickY
Definition doc.h:14917
Real const L2
Definition doc.h:14929
Real const LeftStickX
Definition doc.h:14913
Documentation for class CItemAnchor.
Definition doc.h:16487
Documentation for class CMacroblockInstance.
Definition doc.h:16388
Documentation for class CMacroblockModel.
Definition doc.h:16676
API for Maniaplanet client scripts.
Definition doc.h:19289
API for Maniaplanet client scripts.
Definition doc.h:13495
An event.
Definition doc.h:15988
API for Maniaplanet client scripts.
Definition doc.h:288
Boolean OpenFileInExplorer(Text FileName)
API for game interface client scripts.
Definition doc.h:18476
CUIConfig * ClientUI
Definition doc.h:18501
CUIConfig * UI
Definition doc.h:18497
Void SplitScreenAssignLayer(CUILayer UILayer, Integer ScreenNum)
GameMode ManaiApp event.
Definition doc.h:20865
This is the client ManiaApp for game modes.
Definition doc.h:20847
Void SendCustomEvent(Text Type, Array< Text > Data)
Station mania app.
Definition doc.h:13382
Void Maker_EditNewTitle(Text EditedTitleName)
API for a Title main menu.
Definition doc.h:5583
Void ExternalRequest_Clear()
Real FillExtraSpaceWithBluredContents_Opacity
Definition doc.h:5628
CTitleEdition *const TitleEdition
Definition doc.h:5636
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:10012
Documentation for class CMapBotSpawn.
Definition doc.h:10035
Documentation for class CMapEditorCamera.
Definition doc.h:16804
Documentation for class CMapEditorConnectResults.
Definition doc.h:17120
Documentation for class CMapEditorCursor.
Definition doc.h:17009
Documentation for class CMapEditorInventoryArticle.
Definition doc.h:20743
Documentation for class CMapEditorInventoryDirectory.
Definition doc.h:20701
Documentation for class CMapEditorInventory.
Definition doc.h:16547
Documentation for class CMapEditorInventoryNode.
Definition doc.h:20720
An event.
Definition doc.h:16285
API for the plugins of the map editor.
Definition doc.h:5702
Real BleacherSpectatorsFillRatio
Definition doc.h:6933
Integer BleacherSpectatorsCount
Definition doc.h:6937
This is the base Manialink page interface.
Definition doc.h:3535
Documentation for class CMapGroup.
Definition doc.h:19503
Documentation for class CMap.
Definition doc.h:13531
Documentation for class CMapInfo.
Definition doc.h:7246
Documentation for class CMapLandmark.
Definition doc.h:17240
Ident const MarkerId
Definition doc.h:17245
Documentation for class CMapObjectAnchor.
Definition doc.h:18243
Documentation for class CMapRecord.
Definition doc.h:19863
Documentation for class CMapSector.
Definition doc.h:20791
Documentation for class CMapSpawn.
Definition doc.h:9921
API for the plugins of the map editor.
Definition doc.h:10202
Documentation for class CMapWaypoint.
Definition doc.h:10061
Masterserver user info.
Definition doc.h:15726
Text const Login
Definition doc.h:15756
Text const DisplayName
Definition doc.h:15760
Integer const ZoneLevelCount
Definition doc.h:15735
Text GetZone(Integer ZoneLevel)
CMasterServerUser::EMasterServerConnectionStatus const ConnectionStatus
Definition doc.h:15764
Represents a match-settings file.
Definition doc.h:19226
Text const Name
Definition doc.h:19231
Allows handling of match-settings files.
Definition doc.h:16186
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:16231
Represents a map in the playlist of a matchsetting.
Definition doc.h:21052
Text const Name
Definition doc.h:21057
Boolean const FileExists
Definition doc.h:21061
Documentation for class CMediaTrackerBlock.
Definition doc.h:21029
Documentation for class CMediaTrackerClipGroup.
Definition doc.h:19200
Documentation for class CMediaTrackerClip.
Definition doc.h:19173
Documentation for class CMediaTrackerTrack.
Definition doc.h:19211
Create scenes for use in menus with <Camera> manialink element.
Definition doc.h:5349
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:13985
Manialink control.
Definition doc.h:13725
Manialink control.
Definition doc.h:4047
Manialink entry.
Definition doc.h:14062
Manialink filename entry.
Definition doc.h:19429
Documentation for class CMlFrame.
Definition doc.h:13641
Manialink control.
Definition doc.h:13935
Real Ratio
Definition doc.h:13952
Real GradingRatio
Definition doc.h:13956
Documentation for class CMlGraphCurve.
Definition doc.h:19399
Real Width
Definition doc.h:19420
Manialink control.
Definition doc.h:13905
Manialink entry.
Definition doc.h:14144
Text TextPrefix
Definition doc.h:14212
Manialink control.
Definition doc.h:13863
Manialink control.
Definition doc.h:14265
Real ZoomFactor
Definition doc.h:14282
Documentation for class CMlPage.
Definition doc.h:3639
Documentation for class CMlQuad.
Definition doc.h:14307
Documentation for class CMlScript_ReadOnly.
Definition doc.h:18519
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:10544
CPlaygroundClient const *const Playground
Definition doc.h:10553
Boolean IsSpectator
Definition doc.h:10557
Boolean IsSpectatorClient
Definition doc.h:10561
API for GameModes Manialinks.
Definition doc.h:10365
Void RequestSpectatorClient(Boolean Spectator)
Void SetSpectateTarget(Text Player)
Boolean IsSpectator
Definition doc.h:10430
CUIConfig const *const UI
Definition doc.h:10422
CManiaAppPlaygroundCommon *const ParentApp
Definition doc.h:10446
Boolean IsSpectatorClient
Definition doc.h:10434
CUIConfig *const ClientUI
Definition doc.h:10426
Manialink control.
Definition doc.h:13841
This is the stations Manialink interface.
Definition doc.h:3550
CManiaAppStation *const ParentApp
Definition doc.h:3555
Manialink entry.
Definition doc.h:13999
Manialink control.
Definition doc.h:13739
Rules API for gamemodes.
Definition doc.h:8592
CDataFileMgr *const DataFileMgr
Definition doc.h:8836
Ident ItemList_AddWithSkin(Text ModelName, Text SkinNameOrUrl)
CInputManager *const Input
Definition doc.h:8832
Documentation for class CModeTurret.
Definition doc.h:9931
Documentation for class CModeTurretManager.
Definition doc.h:17649
Documentation for class CModeVehicle.
Definition doc.h:9953
Documentation for class CModeVehicleManager.
Definition doc.h:17724
Documentation for class CModuleMenuComponent.
Definition doc.h:10742
Documentation for class CModuleMenuFileBrowser.
Definition doc.h:18618
Documentation for class CModuleMenu.
Definition doc.h:15962
This is the title menus Manialink interface.
Definition doc.h:13114
Documentation for class CModuleMenuModel.
Definition doc.h:18955
Documentation for class CModuleMenuPage.
Definition doc.h:10788
Documentation for class CModuleMenuPageModel.
Definition doc.h:18978
Documentation for class CModulePlaygroundChrono.
Definition doc.h:18747
Documentation for class CModulePlayground.
Definition doc.h:10761
Documentation for class CModulePlaygroundHud.
Definition doc.h:17584
Documentation for class CModulePlaygroundHudModel.
Definition doc.h:18989
Documentation for class CModulePlaygroundInventory.
Definition doc.h:18863
Documentation for class CModulePlaygroundPlayerState.
Definition doc.h:18677
Documentation for class CModulePlaygroundScoresTable.
Definition doc.h:18770
Documentation for class CModulePlaygroundSpeedMeter.
Definition doc.h:18688
An playground Store module.
Definition doc.h:18898
Documentation for class CModulePlaygroundTeamState.
Definition doc.h:18666
Documentation for class CNadeoServicesItemCollection.
Definition doc.h:19524
Documentation for class CNadeoServicesItemCollectionVersion.
Definition doc.h:21067
Documentation for class CNadeoServicesMap.
Definition doc.h:19615
Documentation for class CNadeoServicesSkin.
Definition doc.h:19734
Documentation for class CNews.
Definition doc.h:20296
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:8485
Documentation for class CNotification_SquadDeleted.
Definition doc.h:804
Documentation for class CNotification_Squad.
Definition doc.h:8492
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:17573
An event.
Definition doc.h:20613
CNotificationsConsumerEvent::EType const Type
Definition doc.h:20625
CNotificationsConsumerNotification *const Notification
Definition doc.h:20629
Manager of buddies instant messaging.
Definition doc.h:16155
Array< CNotificationsConsumerEvent *const > Events
Definition doc.h:16168
Array< CNotificationsConsumerNotification *const > Notifications
Definition doc.h:16172
A Notification.
Definition doc.h:20635
Script API to create Packs (can be Titlepacks or plain ManiaCredited data), and generate new builds o...
Definition doc.h:20558
Void RegisterPackForEditedTitle()
Ident Build_Begin(CPackCreatorPack Pack, CPackCreatorTitleInfo TitleInfo)
A pack.
Definition doc.h:21261
Ident const PackId
Definition doc.h:21266
A recipient included in the bill for a Pack.
Definition doc.h:21342
Integer const UseCost
Definition doc.h:21355
Text const Login
Definition doc.h:21347
Integer const GetCost
Definition doc.h:21351
Script API to create Pack files (can be Titlepack or plain ManiaCredited data).
Definition doc.h:19300
Text Station_ManialinkUrl
Definition doc.h:19357
Boolean const Solo_HasCampaign
Definition doc.h:19373
Documentation for class CParsingDocument.
Definition doc.h:14417
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:19456
A player is the incarnation of the user in the playground.
Definition doc.h:7998
Integer LandmarkOrderSelector_Race
Definition doc.h:8015
API for plugins to get playground info.
Definition doc.h:18262
Boolean SaveReplay(Text FileName)
Void RequestChangeModeScriptSettings(Text SettingsXml)
Boolean SaveMap(Text FileName)
Void RequestSpectatorClient(Boolean Spectator)
CMap *const Map
Definition doc.h:18297
Boolean const IsSpectator
Definition doc.h:18325
Boolean const IsSpectatorClient
Definition doc.h:18329
Documentation for class CPrestige.
Definition doc.h:20420
Documentation for class CRankingsZoneMgr.
Definition doc.h:4968
Documentation for class CReplayInfo.
Definition doc.h:19803
Documentation for class CScore.
Definition doc.h:8026
Score and leaderboard manager.
Definition doc.h:4853
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:4858
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:19948
Documentation for class CSeasonMapInfo.
Definition doc.h:21094
API for server control when playing online.
Definition doc.h:8253
Boolean IsDisableChangeTeams
Definition doc.h:8308
Boolean ForcePlayerRequestedTeam(CClient Client, Integer Team)
CServerInfo *const ServerInfo
Definition doc.h:8268
Void Authentication_GetToken(Ident UserId, Text AppLogin)
Text ConnectFakePlayer()
Documentation for class CServerInfo.
Definition doc.h:17367
ServerPlugin Event.
Definition doc.h:8116
CServerPluginEvent::EType const Type
Definition doc.h:8148
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:8499
An action event.
Definition doc.h:10271
CSmActionEvent::EType const Type
Definition doc.h:10311
An action.
Definition doc.h:2516
Boolean const IsInitialFrame
Definition doc.h:2557
Documentation for class CSmMapBase.
Definition doc.h:9811
Documentation for class CSmMapGate.
Definition doc.h:18177
Documentation for class CSmMapGauge.
Definition doc.h:18212
Real ValueReal
Definition doc.h:18221
Documentation for class CSmMapLandmark.
Definition doc.h:9834
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:9537
CSmModeEvent::EType const Type
Definition doc.h:9605
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:10079
CSmPlayer *const Player
Definition doc.h:10121
API for ShootMania bots.
Definition doc.h:17856
Real TargetWorldRadius
Definition doc.h:18115
Void Scripted_RequestGunTrigger()
Real FlockRadius
Definition doc.h:18133
Vec3 Orbit_AnchorPoint
Definition doc.h:18055
Vec3 Escape_AnchorPoint
Definition doc.h:18023
Array< CSmPlayerDriver * > FlockPartners
Definition doc.h:18128
Real TargetWorldPriority
Definition doc.h:18119
Integer LostTargetChaseDuration
Definition doc.h:18123
CSmPlayerDriver::ESmDriverPathState const PathState
Definition doc.h:17971
Real TargetDetectionFov
Definition doc.h:17955
Void Scripted_RequestAction()
Real FlockAlignmentWeight
Definition doc.h:18148
Real FlockFov
Definition doc.h:18138
Real FlockCohesionWeight
Definition doc.h:18143
Real FlockSeparationWeight
Definition doc.h:18153
Vec3 Saunter_AnchorPoint
Definition doc.h:18039
A Shootmania player.
Definition doc.h:9083
Array< Integer > LapWaypointTimes
Definition doc.h:9116
Real AdherenceCoef
Definition doc.h:9444
Real const GetLinearHue
Definition doc.h:9248
Real AccelCoef
Definition doc.h:9432
Real EnergyLevel
Definition doc.h:9224
Boolean UseCrudeExtrapolation
Definition doc.h:9420
Text Dossard
Definition doc.h:9232
CStuntStatus *const Stunt
Definition doc.h:9508
Real StaminaGain
Definition doc.h:9188
Real SpeedPower
Definition doc.h:9196
Real AmmoGain
Definition doc.h:9148
Real ControlCoef
Definition doc.h:9436
Real GravityCoef
Definition doc.h:9440
Real ArmorPower
Definition doc.h:9172
Real StaminaMax
Definition doc.h:9184
Real StaminaPower
Definition doc.h:9192
Real JumpPower
Definition doc.h:9200
Real ThrowSpeed
Definition doc.h:9272
Scoring info for ShootMania players.
Definition doc.h:9858
Documentation for class CSquad.
Definition doc.h:20497
Documentation for class CSquadInvitation.
Definition doc.h:21199
Documentation for class CSquadMember.
Definition doc.h:21230
Station info & manipulation.
Definition doc.h:13409
Boolean const IsEditable
Definition doc.h:13485
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:5466
Boolean const IsWritingUserSave
Definition doc.h:5539
Integer const CurrentLocalDate
Definition doc.h:5507
Task result containing a part of the history of account trophy gain.
Definition doc.h:15225
Array< CAccountTrophyGainForHistory *const > AccountTrophyGainList
Definition doc.h:15230
Task result containing a list of account trophy gain.
Definition doc.h:17638
Array< CAccountTrophyGain *const > AccountTrophyGainList
Definition doc.h:17643
Task result containing a last year summary of account trophy.
Definition doc.h:15243
CAccountTrophyLastYearSummary *const Summary
Definition doc.h:15248
Asynchronous task result.
Definition doc.h:15795
Results of task requesting the club tag of users.
Definition doc.h:15933
Text GetClubTag(Text WebServicesUserId)
Asynchronous task result.
Definition doc.h:15785
Results containing a list of media info.
Definition doc.h:15143
Array< Text > Files
Definition doc.h:15156
Text const ParentPath
Definition doc.h:15148
Array< Text > SubFolders
Definition doc.h:15160
Text const Path
Definition doc.h:15152
Task result containing a list of friend info.
Definition doc.h:15809
Array< CFriend *const > FriendList
Definition doc.h:15814
Results containing a list of GameMode info.
Definition doc.h:15169
Array< CTaskResult_ModeInfo *const > GameModes
Definition doc.h:15174
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:8474
CGhost *const Ghost
Definition doc.h:8479
Results containing a list of ghost.
Definition doc.h:15129
Array< CGhost *const > Ghosts
Definition doc.h:15134
Results containing a list of map info.
Definition doc.h:15021
Text const ParentPath
Definition doc.h:15026
Array< CMapInfo *const > MapInfos
Definition doc.h:15034
Text const Path
Definition doc.h:15030
Array< Text > SubFolders
Definition doc.h:15038
Task result containing a list of map record info from NadeoServices.
Definition doc.h:15183
Array< CMapRecord *const > MapRecordList
Definition doc.h:15188
A GameMode script.
Definition doc.h:19826
Text const Name
Definition doc.h:19831
Task result containing a ItemCollection info from NadeoServices.
Definition doc.h:14993
CNadeoServicesItemCollection *const ItemCollection
Definition doc.h:14998
Task result containing a list of ItemCollection info from NadeoServices.
Definition doc.h:15007
Array< CNadeoServicesItemCollection *const > ItemCollectionList
Definition doc.h:15012
Task result containing a map info from NadeoServices.
Definition doc.h:15047
CNadeoServicesMap *const Map
Definition doc.h:15052
Task result containing a list of map info from NadeoServices.
Definition doc.h:15061
Array< CNadeoServicesMap *const > MapList
Definition doc.h:15066
Task result containing a Skin info from NadeoServices.
Definition doc.h:15075
CNadeoServicesSkin *const Skin
Definition doc.h:15080
Task result containing a list of Skin info from NadeoServices.
Definition doc.h:15089
Array< CNadeoServicesSkin *const > SkinList
Definition doc.h:15094
Asynchronous task result.
Definition doc.h:15891
Results containing a list of replay info.
Definition doc.h:15103
Array< Text > SubFolders
Definition doc.h:15120
Text const Path
Definition doc.h:15112
Text const ParentPath
Definition doc.h:15108
Array< CReplayInfo *const > ReplayInfos
Definition doc.h:15116
Task result containing a season.
Definition doc.h:15197
CSeason *const Season
Definition doc.h:15202
Task result containing a list of season.
Definition doc.h:15211
Array< CSeason *const > SeasonList
Definition doc.h:15216
Asynchronous task result.
Definition doc.h:15823
Task result containing a Squad.
Definition doc.h:15905
CSquad *const Squad
Definition doc.h:15910
Asynchronous task result.
Definition doc.h:15919
Asynchronous task result.
Definition doc.h:15715
Task result containing the settings of a solo medal trophy achievement.
Definition doc.h:15257
CTrophySoloMedalAchievementSettings *const Settings
Definition doc.h:15262
Asynchronous task result.
Definition doc.h:15845
Asynchronous task result.
Definition doc.h:15873
Asynchronous task result.
Definition doc.h:15859
Results of task requesting the zone of user.
Definition doc.h:15289
CZone GetUserZone(Text WebServicesUserId)
Task result containing a Notification.
Definition doc.h:15947
CNotification *const Notification
Definition doc.h:15952
Results containing a list of zones.
Definition doc.h:15271
CZone GetZone(Text ZoneId)
Array< CZone *const > ZoneList
Definition doc.h:15276
Asynchronous task result.
Definition doc.h:8397
Text const ErrorCode
Definition doc.h:8422
Boolean const IsCanceled
Definition doc.h:8414
Boolean const IsProcessing
Definition doc.h:8402
Text const ErrorType
Definition doc.h:8418
Boolean const HasFailed
Definition doc.h:8410
Text const ErrorDescription
Definition doc.h:8426
Boolean const HasSucceeded
Definition doc.h:8406
Documentation for class CTeam.
Definition doc.h:8062
API for titles menus to control the main loop.
Definition doc.h:13129
Boolean const IsReady
Definition doc.h:13176
Void GetServerInfo(Text ServerLogin)
Void PublishFile(Text FileName)
Void JoinServer(Text ServerLogin, Boolean AsSpectator, Text Password)
CTitleControl::EResult const LatestResult
Definition doc.h:13180
API for titles in edition mode.
Definition doc.h:16064
Void SetTitleCampaign(Integer CampaignNum, Text ScoreContext, Text MapsFolderNameOrPlayListName, Boolean OfficialRecordEnabled)
CPackCreator *const PackCreator
Definition doc.h:16081
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:17528
User privileges manager.
Definition doc.h:7030
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:7075
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:8573
Documentation for class CTrophySoloMedalAchievementLevelSettings.
Definition doc.h:21129
Documentation for class CTrophySoloMedalAchievementSettings.
Definition doc.h:20094
UIConfig Event.
Definition doc.h:17290
This object handles the interface.
Definition doc.h:7392
Integer AlliesLabelsMaxCount
Definition doc.h:7839
Void Spectator_SetForcedTarget_Ghost(Ident GhostInstanceId)
Real OverlayChatWidthCoef
Definition doc.h:7679
Integer OverlayChatLineCount
Definition doc.h:7671
CUIConfig::EObserverMode SpectatorObserverMode
Definition doc.h:7891
Text MarkersXML
Definition doc.h:7610
Boolean OverrideMarkers
Definition doc.h:7615
Documentation for class CUIConfigMarker.
Definition doc.h:17139
Boolean HideOnSelf
Definition doc.h:17226
Real DistMax
Definition doc.h:17213
Documentation for class CUIConfigMgr.
Definition doc.h:8190
Documentation for class CUILayer.
Definition doc.h:6951
User profile.
Definition doc.h:3679
Documentation for class CUserPrestige.
Definition doc.h:20361
API for local users/profiles.
Definition doc.h:5003
CTaskResult_StringIntList GetGroups(Ident UserId)
Array< CGameUserVoiceChat *const > VoiceChat_Users_Speaking
Definition doc.h:5249
Local profile settings.
Definition doc.h:15304
Real Interface_BeaconOpacity
Definition doc.h:15586
Real Inputs_MouseScaleFreeLook
Definition doc.h:15650
Real Inputs_MouseScaleY
Definition doc.h:15646
Real Interface_CrosshairSize
Definition doc.h:15550
Real Interface_BeaconDuration
Definition doc.h:15594
Real Interface_CrosshairOpacity
Definition doc.h:15554
Real Interface_PlayerShieldScale
Definition doc.h:15562
Real User_LightTrailHue
Definition doc.h:15434
Real Inputs_MouseSensitivityDefault
Definition doc.h:15658
Real Interface_OppoLinearHue
Definition doc.h:15578
Real Interface_CrosshairSaturation
Definition doc.h:15542
Real User_HornPitch
Definition doc.h:15438
Real Interface_AllyLinearHue
Definition doc.h:15570
Boolean const CanChangeAvatar
Definition doc.h:15398
Real Interface_BeaconSize
Definition doc.h:15590
Real Inputs_MouseSensitivityLaser
Definition doc.h:15662
Real Inputs_MouseAccel
Definition doc.h:15654
CUserV2Profile::EMapEditorMode Editors_MapEditorMode
Definition doc.h:15482
Real Interface_CrosshairLinearHue
Definition doc.h:15546
Vehicle or Character settings.
Definition doc.h:20182
Real AnalogSensitivity
Definition doc.h:20203
Real RumbleIntensity
Definition doc.h:20223
Text const SkinName
Definition doc.h:20195
Real CenterSpringIntensity
Definition doc.h:20231
Real AnalogDeadZone
Definition doc.h:20207
This is a video playback handle.
Definition doc.h:14487
Real PlayCursor
Definition doc.h:14547
Boolean AutoProcessing
Definition doc.h:14527
Documentation for class CVideoManager.
Definition doc.h:4319
Documentation for class CVoiceChatConfig.
Definition doc.h:16245
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:5545
CTaskResult_WSNotification Notification_PopNext(Ident UserId)
Array< CTaskResult *const > TaskResults
Definition doc.h:5550
Boolean Notification_IsAvailable(Ident UserId)
Void TaskResult_Release(Ident TaskId)
Asynchronous task result.
Definition doc.h:20012
Asynchronous task result.
Definition doc.h:20809
Asynchronous task result.
Definition doc.h:20022
Asynchronous task result.
Definition doc.h:17845
Asynchronous task result.
Definition doc.h:17831
Asynchronous task result.
Definition doc.h:19517
Asynchronous task result.
Definition doc.h:19598
Asynchronous task result.
Definition doc.h:19608
Asynchronous task result.
Definition doc.h:19717
Asynchronous task result.
Definition doc.h:19727
Asynchronous task result.
Definition doc.h:19796
Asynchronous task result.
Definition doc.h:19941
Asynchronous task result.
Definition doc.h:20002
Asynchronous task result.
Definition doc.h:20490
Asynchronous task result.
Definition doc.h:20087
Asynchronous task result.
Definition doc.h:20240
Asynchronous task result.
Definition doc.h:19856
Asynchronous task result.
Definition doc.h:20289
Asynchronous task result.
Definition doc.h:20551
Asynchronous task result.
Definition doc.h:20413
Asynchronous task result.
Definition doc.h:20403
Asynchronous task result.
Definition doc.h:20354
Asynchronous task result.
Definition doc.h:20124
An event.
Definition doc.h:17493
Documentation for class CXmlRpc.
Definition doc.h:8367
Documentation for class CZone.
Definition doc.h:20131
Documentation for class SConstString.
Definition doc.h:10672
Documentation for class SConstStringInt.
Definition doc.h:10665
Standard animation functions.
Definition doc.h:22122
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:22466
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:22083
Standard mathematical operations, angles are in radians unless specified.
Definition doc.h:21368
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:21717
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:22345
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