Convert MAP_DATA to an unordered safe map to guard against accidental insertions for level data. Release Build 12701.
Some checks failed
Emscripten Build / Build_and_Deploy_Web_Build (push) Failing after 2m48s
Some checks failed
Emscripten Build / Build_and_Deploy_Web_Build (push) Failing after 2m48s
This commit is contained in:
parent
2f62366380
commit
2ccf58f938
@ -455,8 +455,8 @@ bool AiL::OnConsoleCommand(const std::string& sCommand){
|
||||
}else
|
||||
if(args[0]=="/generatecache"){
|
||||
ConsoleOut()<<"Generating map caches."<<std::endl;
|
||||
for(auto&[levelName,mapData]:MAP_DATA){
|
||||
if(!levelName.starts_with("STORY"))TileGroupDataFile::AddToMapCacheQueue(levelName);
|
||||
for(auto&map:MAP_DATA){
|
||||
if(!map.GetMapName().starts_with("STORY"))TileGroupDataFile::AddToMapCacheQueue(map.GetMapName());
|
||||
}
|
||||
GameState::ChangeState(States::GAME_RUN);
|
||||
}else{
|
||||
@ -1358,19 +1358,21 @@ void AiL::RenderWorld(float fElapsedTime){
|
||||
}
|
||||
|
||||
for(TileRenderData&tile:group.GetTiles()){
|
||||
tile.tileOpacity=group.fadeFactor;
|
||||
tile.group=&group;
|
||||
if(Unlock::IsUnlocked(GetCurrentMap().GetLayers()[tile.layerID].unlockCondition)){
|
||||
tile.tileOpacity=group.fadeFactor;
|
||||
tile.group=&group;
|
||||
|
||||
#pragma region Unhiding tile detection
|
||||
auto it=MAP_TILESETS.at(tile.tileSheet.tilesetName).foregroundTiles.find(tile.tileID); //We're looking for tiles that are marked as should not be faded away by a tile group.
|
||||
if(it!=MAP_TILESETS.at(tile.tileSheet.tilesetName).foregroundTiles.end()){
|
||||
if(!(*it).second.hide)tile.tileOpacity=0.f;
|
||||
#pragma region Unhiding tile detection
|
||||
auto it=MAP_TILESETS.at(tile.tileSheet.tilesetName).foregroundTiles.find(tile.tileID); //We're looking for tiles that are marked as should not be faded away by a tile group.
|
||||
if(it!=MAP_TILESETS.at(tile.tileSheet.tilesetName).foregroundTiles.end()){
|
||||
if(!(*it).second.hide)tile.tileOpacity=0.f;
|
||||
}
|
||||
#pragma endregion
|
||||
if(MAP_TILESETS.at(tile.tileSheet.tilesetName).collision.find(tile.tileID)!=MAP_TILESETS.at(tile.tileSheet.tilesetName).collision.end()){
|
||||
tilesWithCollision.push_back(&tile);
|
||||
}else{
|
||||
tilesWithoutCollision.push_back(&tile); //Tiles without collision are assumed to always be in the foreground. They don't have any depth rules.
|
||||
}
|
||||
#pragma endregion
|
||||
if(MAP_TILESETS.at(tile.tileSheet.tilesetName).collision.find(tile.tileID)!=MAP_TILESETS.at(tile.tileSheet.tilesetName).collision.end()){
|
||||
tilesWithCollision.push_back(&tile);
|
||||
}else{
|
||||
tilesWithoutCollision.push_back(&tile); //Tiles without collision are assumed to always be in the foreground. They don't have any depth rules.
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2535,76 +2537,74 @@ void AiL::_PrepareLevel(MapName map,MusicChange changeMusic){
|
||||
for(int y=0;y<GetCurrentMapData().height;y++){
|
||||
int layerID=0;
|
||||
for(LayerTag&layer:MAP_DATA[currentLevel].LayerData){
|
||||
if(Unlock::IsUnlocked(layer.unlockCondition)){
|
||||
int tileID=layer.tiles[y][x]-1;
|
||||
if(tileID!=-1){
|
||||
TilesheetData tileSheet=GetTileSheet(currentLevel,tileID);
|
||||
int tileSheetWidth=MAP_TILESETS.at(tileSheet.tilesetName).tileset->Sprite()->width/MAP_TILESETS.at(tileSheet.tilesetName).tilewidth;
|
||||
int tileSheetHeight=MAP_TILESETS.at(tileSheet.tilesetName).tileset->Sprite()->height/MAP_TILESETS.at(tileSheet.tilesetName).tileheight;
|
||||
int tileSheetIndex=tileID-(tileSheet.firstgid-1);
|
||||
int realTileSheetIndex=(tileID%1000000)-(tileSheet.firstgid-1);
|
||||
int tileSheetX=realTileSheetIndex%tileSheetWidth;
|
||||
int tileSheetY=realTileSheetIndex/tileSheetWidth;
|
||||
int checkTileIndex=tileID;
|
||||
int checkTileID=tileSheetIndex;
|
||||
#pragma region TileGroupShenanigans
|
||||
auto SetupTileGroups=[&](std::function<bool(TilesheetData,int)>IsForeground,TileRenderData tile,std::set<vi2d>&foregroundTilesIncluded,std::vector<TileGroup>&groups){
|
||||
if(foregroundTilesIncluded.find({x,y})==foregroundTilesIncluded.end()&&IsForeground(tileSheet,tileSheetIndex)){
|
||||
std::queue<vi2d>tileGroupChecks;
|
||||
TileGroup group;
|
||||
foregroundTilesIncluded.insert({x,y});
|
||||
group.InsertTile(tile);
|
||||
if(x>0&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{-1,0})==foregroundTilesIncluded.end())tileGroupChecks.push({x-1,y});
|
||||
if(x<GetCurrentMapData().width-1&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{1,0})==foregroundTilesIncluded.end())tileGroupChecks.push({x+1,y});
|
||||
if(y>0&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{0,-1})==foregroundTilesIncluded.end())tileGroupChecks.push({x,y-1});
|
||||
if(y<GetCurrentMapData().height-1&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{0,1})==foregroundTilesIncluded.end())tileGroupChecks.push({x,y+1});
|
||||
auto IterateThroughOtherLayers=[&](vi2d pos,bool loopAll=false){
|
||||
int layer2ID=0;
|
||||
bool hadForeground=false;
|
||||
for(LayerTag&layer2:MAP_DATA[currentLevel].LayerData){
|
||||
if(!loopAll&&&layer==&layer2){layer2ID++;continue;};
|
||||
int tileID=layer2.tiles[pos.y][pos.x]-1;
|
||||
TilesheetData tileSheet=GetTileSheet(currentLevel,tileID%1000000);
|
||||
int tileSheetWidth=MAP_TILESETS.at(tileSheet.tilesetName).tileset->Sprite()->width/MAP_TILESETS.at(tileSheet.tilesetName).tilewidth;
|
||||
int tileSheetHeight=MAP_TILESETS.at(tileSheet.tilesetName).tileset->Sprite()->height/MAP_TILESETS.at(tileSheet.tilesetName).tileheight;
|
||||
int tileSheetIndex=tileID-(tileSheet.firstgid-1);
|
||||
int realTileSheetIndex=(tileID%1000000)-(tileSheet.firstgid-1);
|
||||
int tileSheetX=realTileSheetIndex%tileSheetWidth;
|
||||
int tileSheetY=realTileSheetIndex/tileSheetWidth;
|
||||
TileRenderData tile={tileSheet,vi2d{pos.x,pos.y}*game->GetCurrentMapData().tilewidth,vi2d{tileSheetX,tileSheetY}*game->GetCurrentMapData().tilewidth,realTileSheetIndex,layer2ID};
|
||||
if(IsForeground(tileSheet,tileSheetIndex)){
|
||||
foregroundTilesIncluded.insert({pos.x,pos.y});
|
||||
group.InsertTile(tile);
|
||||
hadForeground=true;
|
||||
}
|
||||
layer2ID++;
|
||||
int tileID=layer.tiles[y][x]-1;
|
||||
if(tileID!=-1){
|
||||
TilesheetData tileSheet=GetTileSheet(currentLevel,tileID);
|
||||
int tileSheetWidth=MAP_TILESETS[tileSheet.tilesetName].tileset->Sprite()->width/MAP_TILESETS.at(tileSheet.tilesetName).tilewidth;
|
||||
int tileSheetHeight=MAP_TILESETS[tileSheet.tilesetName].tileset->Sprite()->height/MAP_TILESETS.at(tileSheet.tilesetName).tileheight;
|
||||
int tileSheetIndex=tileID-(tileSheet.firstgid-1);
|
||||
int realTileSheetIndex=(tileID%1000000)-(tileSheet.firstgid-1);
|
||||
int tileSheetX=realTileSheetIndex%tileSheetWidth;
|
||||
int tileSheetY=realTileSheetIndex/tileSheetWidth;
|
||||
int checkTileIndex=tileID;
|
||||
int checkTileID=tileSheetIndex;
|
||||
#pragma region TileGroupShenanigans
|
||||
auto SetupTileGroups=[&](std::function<bool(TilesheetData,int)>IsForeground,TileRenderData tile,std::set<vi2d>&foregroundTilesIncluded,std::vector<TileGroup>&groups){
|
||||
if(foregroundTilesIncluded.find({x,y})==foregroundTilesIncluded.end()&&IsForeground(tileSheet,tileSheetIndex)){
|
||||
std::queue<vi2d>tileGroupChecks;
|
||||
TileGroup group;
|
||||
foregroundTilesIncluded.insert({x,y});
|
||||
group.InsertTile(tile);
|
||||
if(x>0&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{-1,0})==foregroundTilesIncluded.end())tileGroupChecks.push({x-1,y});
|
||||
if(x<GetCurrentMapData().width-1&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{1,0})==foregroundTilesIncluded.end())tileGroupChecks.push({x+1,y});
|
||||
if(y>0&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{0,-1})==foregroundTilesIncluded.end())tileGroupChecks.push({x,y-1});
|
||||
if(y<GetCurrentMapData().height-1&&foregroundTilesIncluded.find(vi2d{x,y}+vi2d{0,1})==foregroundTilesIncluded.end())tileGroupChecks.push({x,y+1});
|
||||
auto IterateThroughOtherLayers=[&](vi2d pos,bool loopAll=false){
|
||||
int layer2ID=0;
|
||||
bool hadForeground=false;
|
||||
for(LayerTag&layer2:MAP_DATA[currentLevel].LayerData){
|
||||
if(!loopAll&&&layer==&layer2){layer2ID++;continue;};
|
||||
int tileID=layer2.tiles[pos.y][pos.x]-1;
|
||||
TilesheetData tileSheet=GetTileSheet(currentLevel,tileID%1000000);
|
||||
int tileSheetWidth=MAP_TILESETS.at(tileSheet.tilesetName).tileset->Sprite()->width/MAP_TILESETS.at(tileSheet.tilesetName).tilewidth;
|
||||
int tileSheetHeight=MAP_TILESETS.at(tileSheet.tilesetName).tileset->Sprite()->height/MAP_TILESETS.at(tileSheet.tilesetName).tileheight;
|
||||
int tileSheetIndex=tileID-(tileSheet.firstgid-1);
|
||||
int realTileSheetIndex=(tileID%1000000)-(tileSheet.firstgid-1);
|
||||
int tileSheetX=realTileSheetIndex%tileSheetWidth;
|
||||
int tileSheetY=realTileSheetIndex/tileSheetWidth;
|
||||
TileRenderData tile={tileSheet,vi2d{pos.x,pos.y}*game->GetCurrentMapData().tilewidth,vi2d{tileSheetX,tileSheetY}*game->GetCurrentMapData().tilewidth,realTileSheetIndex,layer2ID};
|
||||
if(IsForeground(tileSheet,tileSheetIndex)){
|
||||
foregroundTilesIncluded.insert({pos.x,pos.y});
|
||||
group.InsertTile(tile);
|
||||
hadForeground=true;
|
||||
}
|
||||
return hadForeground;
|
||||
};
|
||||
IterateThroughOtherLayers({x,y});
|
||||
while(!tileGroupChecks.empty()){
|
||||
vi2d&pos=tileGroupChecks.front();
|
||||
if(IterateThroughOtherLayers(pos,true)){
|
||||
foregroundTilesIncluded.insert({pos.x,pos.y}); //Regardless of if we found a foreground tile or not, we need to add this to not get stuck in an infinite loop.
|
||||
vi2d targetPos=pos+vi2d{-1,0};
|
||||
if(pos.x>0&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
targetPos=pos+vi2d{1,0};
|
||||
if(pos.x<GetCurrentMapData().width-1&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
targetPos=pos+vi2d{0,-1};
|
||||
if(pos.y>0&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
targetPos=pos+vi2d{0,1};
|
||||
if(pos.y<GetCurrentMapData().height-1&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
}
|
||||
tileGroupChecks.pop();
|
||||
layer2ID++;
|
||||
}
|
||||
groups.push_back(group);
|
||||
return hadForeground;
|
||||
};
|
||||
IterateThroughOtherLayers({x,y});
|
||||
while(!tileGroupChecks.empty()){
|
||||
vi2d&pos=tileGroupChecks.front();
|
||||
if(IterateThroughOtherLayers(pos,true)){
|
||||
foregroundTilesIncluded.insert({pos.x,pos.y}); //Regardless of if we found a foreground tile or not, we need to add this to not get stuck in an infinite loop.
|
||||
vi2d targetPos=pos+vi2d{-1,0};
|
||||
if(pos.x>0&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
targetPos=pos+vi2d{1,0};
|
||||
if(pos.x<GetCurrentMapData().width-1&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
targetPos=pos+vi2d{0,-1};
|
||||
if(pos.y>0&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
targetPos=pos+vi2d{0,1};
|
||||
if(pos.y<GetCurrentMapData().height-1&&foregroundTilesIncluded.find(targetPos)==foregroundTilesIncluded.end()){tileGroupChecks.push(targetPos);foregroundTilesIncluded.insert(targetPos);}
|
||||
}
|
||||
tileGroupChecks.pop();
|
||||
}
|
||||
};
|
||||
TileRenderData tile={tileSheet,vi2d{x,y}*game->GetCurrentMapData().tilewidth,vi2d{tileSheetX,tileSheetY}*game->GetCurrentMapData().tilewidth,realTileSheetIndex,layerID};
|
||||
SetupTileGroups([&](TilesheetData sheet,int tileID){return IsForegroundTile(sheet,tileID);},tile,foregroundTilesAdded,foregroundTileGroups);
|
||||
SetupTileGroups([&](TilesheetData sheet,int tileID){return IsUpperForegroundTile(tileID);},tile,upperForegroundTilesAdded,upperForegroundTileGroups);
|
||||
#pragma endregion
|
||||
}
|
||||
groups.push_back(group);
|
||||
}
|
||||
};
|
||||
TileRenderData tile={tileSheet,vi2d{x,y}*game->GetCurrentMapData().tilewidth,vi2d{tileSheetX,tileSheetY}*game->GetCurrentMapData().tilewidth,realTileSheetIndex,layerID};
|
||||
SetupTileGroups([&](TilesheetData sheet,int tileID){return IsForegroundTile(sheet,tileID);},tile,foregroundTilesAdded,foregroundTileGroups);
|
||||
SetupTileGroups([&](TilesheetData sheet,int tileID){return IsUpperForegroundTile(tileID);},tile,upperForegroundTilesAdded,upperForegroundTileGroups);
|
||||
#pragma endregion
|
||||
}
|
||||
layerID++;
|
||||
}
|
||||
@ -3360,9 +3360,9 @@ bool AiL::OnUserDestroy(){
|
||||
SteamAPI_Shutdown();
|
||||
#endif
|
||||
GFX.Reset();
|
||||
for(auto&[key,value]:MAP_DATA){
|
||||
if(MAP_DATA[key].optimizedTile!=nullptr){
|
||||
delete MAP_DATA[key].optimizedTile;
|
||||
for(auto&map:MAP_DATA){
|
||||
if(map.optimizedTile!=nullptr){
|
||||
delete map.optimizedTile;
|
||||
}
|
||||
}
|
||||
for(auto&[key,value]:MAP_TILESETS){
|
||||
@ -3399,7 +3399,7 @@ void AiL::InitializeLevels(){
|
||||
if(VisualNovel::storyLevelData.count(cp.map)){ //Visual novel story data for story levels.
|
||||
cp.levelDataExists=true;
|
||||
}
|
||||
if(MAP_DATA.find(cp.map)!=MAP_DATA.end()){
|
||||
if(MAP_DATA.count(cp.map)){
|
||||
MAP_DATA[cp.map].name=cp.name;
|
||||
|
||||
//Boss arena map zone check.
|
||||
@ -3855,8 +3855,8 @@ void AiL::ValidateGameStatus(){
|
||||
if(ItemDrop::gravity!="ItemDrop.Item Drop Gravity"_F){
|
||||
ERR("WARNING! Gravity constant for item drops was not initialized to "<<"Item Drop Gravity"_F<<". Actual value: "<<ItemDrop::gravity);
|
||||
}
|
||||
for(auto&[name,map]:MAP_DATA){
|
||||
for(EnvironmentalAudio&audio:map.environmentalAudioData){
|
||||
for(auto&map:MAP_DATA){
|
||||
for(const EnvironmentalAudio&audio:map.environmentalAudioData){
|
||||
if(EnvironmentalAudio::SOUND_DATA.find(audio.audioName)==EnvironmentalAudio::SOUND_DATA.end())ERR(std::format("WARNING! Could not find environmental audio data {} for Map {}. Check audio/environmentalaudio.txt configuration!",audio.audioName,map.name));
|
||||
}
|
||||
}
|
||||
@ -3871,10 +3871,10 @@ void AiL::ValidateGameStatus(){
|
||||
|
||||
#pragma region Map Spawn Statistics
|
||||
if("display_spawn_report"_I){
|
||||
for(auto&[map,data]:MAP_DATA){
|
||||
for(auto&map:MAP_DATA){
|
||||
std::map<std::string,long>monsterCounts;
|
||||
for(auto&[key,value]:MAP_DATA[map].SpawnerData){
|
||||
SpawnerTag&spawnData=MAP_DATA[map].SpawnerData[key];
|
||||
for(auto&[key,value]:map.SpawnerData){
|
||||
SpawnerTag&spawnData=map.SpawnerData[key];
|
||||
|
||||
vf2d spawnerRadius=vf2d{spawnData.ObjectData.GetFloat("width"),spawnData.ObjectData.GetFloat("height")}/2;
|
||||
for(XMLTag&monster:spawnData.monsters){
|
||||
@ -3882,7 +3882,7 @@ void AiL::ValidateGameStatus(){
|
||||
monsterCounts[monsterName]++;
|
||||
}
|
||||
}
|
||||
LOG("Spawns Report for "<<map<<":");
|
||||
LOG("Spawns Report for "<<map.GetMapDisplayName()<<":");
|
||||
for(auto&[monster,count]:monsterCounts){
|
||||
LOG("\t"<<count<<"x "<<monster);
|
||||
}
|
||||
@ -4776,18 +4776,18 @@ void AiL::PrecacheNewLevels(){
|
||||
datafile cacheTimestampsData;
|
||||
const std::string precacheConfigurationFilepath{std::format("{}{}","config_path"_S,"map_precache_timestamp_config"_S)};
|
||||
if(std::filesystem::exists(precacheConfigurationFilepath))datafile::Read(cacheTimestampsData,precacheConfigurationFilepath);
|
||||
for(auto&[map,size]:MAP_DATA){
|
||||
const std::string mapFileName{std::format("assets/Campaigns/{}",DATA["Levels"][map]["Map File"].GetString())};
|
||||
const std::string mapCacheFileName{std::format("assets/cache/foregroundTileData_{}.data",map)};
|
||||
for(auto&map:MAP_DATA){
|
||||
const std::string mapFileName{std::format("assets/Campaigns/{}",DATA["Levels"][map.GetMapName()]["Map File"].GetString())};
|
||||
const std::string mapCacheFileName{std::format("assets/cache/foregroundTileData_{}.data",map.GetMapName())};
|
||||
const std::string lastWriteTimestamp{std::format("{}",std::filesystem::last_write_time(mapFileName))};
|
||||
|
||||
const bool PrecacheFileExists{game->gamepack.FileExists(mapCacheFileName)};
|
||||
const bool CacheTimestampDiffersFromLastWriteTime{!cacheTimestampsData.HasProperty(map)||cacheTimestampsData[map].GetString()!=lastWriteTimestamp};
|
||||
const bool MapCacheOutOfDate{!cacheTimestampsData.HasProperty(map)||CacheTimestampDiffersFromLastWriteTime};
|
||||
const bool CacheTimestampDiffersFromLastWriteTime{!cacheTimestampsData.HasProperty(map.GetMapName())||cacheTimestampsData[map.GetMapName()].GetString()!=lastWriteTimestamp};
|
||||
const bool MapCacheOutOfDate{!cacheTimestampsData.HasProperty(map.GetMapName())||CacheTimestampDiffersFromLastWriteTime};
|
||||
|
||||
if(!PrecacheFileExists||MapCacheOutOfDate){
|
||||
cacheTimestampsData[map].SetString(lastWriteTimestamp);
|
||||
TileGroupDataFile::AddToMapCacheQueue(map);
|
||||
cacheTimestampsData[map.GetMapName()].SetString(lastWriteTimestamp);
|
||||
TileGroupDataFile::AddToMapCacheQueue(map.GetMapName());
|
||||
}
|
||||
}
|
||||
datafile::Write(cacheTimestampsData,precacheConfigurationFilepath);
|
||||
|
||||
@ -59,6 +59,7 @@ All rights reserved.
|
||||
#include "Minimap.h"
|
||||
#include "Overlay.h"
|
||||
#include <variant>
|
||||
#include"safemap.h"
|
||||
|
||||
#undef KEY_MENU
|
||||
#undef KEY_SELECT
|
||||
@ -169,7 +170,7 @@ public:
|
||||
static float SIZE_CHANGE_SPEED;
|
||||
double levelTime=0.;
|
||||
Camera2D camera;
|
||||
std::unordered_map<MapName,Map>MAP_DATA;
|
||||
safeunorderedmap<MapName,Map>MAP_DATA;
|
||||
|
||||
ResourcePack gamepack;
|
||||
public:
|
||||
|
||||
@ -47,7 +47,7 @@ using MapName=std::string;
|
||||
|
||||
class MapHelper{
|
||||
public:
|
||||
static Map&MapFromString(std::string mapName);
|
||||
static const Map&MapFromString(std::string mapName);
|
||||
};
|
||||
|
||||
struct TileCollisionData{
|
||||
|
||||
@ -40,9 +40,7 @@ All rights reserved.
|
||||
#include "Menu.h"
|
||||
#include "AdventuresInLestoria.h"
|
||||
|
||||
void State_Story::OnStateChange(GameState*prevState){
|
||||
Menu::CloseAllMenus();
|
||||
};
|
||||
void State_Story::OnStateChange(GameState*prevState){}
|
||||
void State_Story::OnLevelLoad(){}
|
||||
void State_Story::OnUserUpdate(AiL*game){
|
||||
VisualNovel::novel.Update();
|
||||
|
||||
@ -56,14 +56,14 @@ void Test::RunMapTests(){
|
||||
is("There are two LowerBridgeCollision zones in Campaign I-I",
|
||||
game->GetZones("CAMPAIGN_1_1").count("LowerBridgeCollision")
|
||||
&&game->GetZones("CAMPAIGN_1_1").at("LowerBridgeCollision").size()>=2);
|
||||
for(auto&[key,value]:game->MAP_DATA){
|
||||
if(value.GetMapType()==Map::MapType::DUNGEON){
|
||||
is("There is an EndZone in Dungeon "+key,
|
||||
game->GetZones(key).count("EndZone"));
|
||||
for(auto&map:game->MAP_DATA){
|
||||
if(map.GetMapType()==Map::MapType::DUNGEON){
|
||||
is("There is an EndZone in Dungeon "+std::string{map.GetMapDisplayName()},
|
||||
game->GetZones(map.GetMapName()).count("EndZone"));
|
||||
}
|
||||
|
||||
for(const ZoneData&endZone:value.GetZones().at("EndZone")){
|
||||
if(endZone.isUpper&&(!value.GetZones().count("UpperZone")||value.GetZones().at("UpperZone").size()==0))ERR(std::format("WARNING! An End Zone was found in map {} with the upper flag when no upper transition zones have been defined in a stage!",value.GetMapDisplayName()));
|
||||
for(const ZoneData&endZone:map.GetZones().at("EndZone")){
|
||||
if(endZone.isUpper&&(!map.GetZones().count("UpperZone")||map.GetZones().at("UpperZone").size()==0))ERR(std::format("WARNING! An End Zone was found in map {} with the upper flag when no upper transition zones have been defined in a stage!",map.GetMapDisplayName()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -49,7 +49,7 @@ uint8_t TileGroup::FADE_AMT=160;
|
||||
std::map<BackdropName,Renderable>BACKDROP_DATA;
|
||||
std::map<BackdropName,Renderable>FOREDROP_DATA;
|
||||
|
||||
Map&MapHelper::MapFromString(std::string mapName){
|
||||
const Map&MapHelper::MapFromString(std::string mapName){
|
||||
return game->MAP_DATA.at(mapName);
|
||||
}
|
||||
|
||||
|
||||
@ -74,7 +74,7 @@ void Unlock::UnlockArea(std::string mapName){
|
||||
)
|
||||
unlocks.insert(mapName);
|
||||
}
|
||||
bool Unlock::IsUnlocked(std::string mapName){
|
||||
bool Unlock::IsUnlocked(const std::string&mapName){
|
||||
return unlocks.count(mapName)||mapName.length()==0;
|
||||
}
|
||||
|
||||
|
||||
@ -52,7 +52,7 @@ public:
|
||||
static void UnlockArea(std::string mapName);
|
||||
//Uses the current map as the unlock criteria.
|
||||
static void UnlockCurrentMap();
|
||||
static bool IsUnlocked(std::string mapName);
|
||||
static bool IsUnlocked(const std::string&mapName);
|
||||
static bool IsUnlocked(ConnectionPoint&cp);
|
||||
static void IncreaseKillCount();
|
||||
};
|
||||
@ -39,7 +39,7 @@ All rights reserved.
|
||||
#define VERSION_MAJOR 1
|
||||
#define VERSION_MINOR 3
|
||||
#define VERSION_PATCH 0
|
||||
#define VERSION_BUILD 12678
|
||||
#define VERSION_BUILD 12701
|
||||
|
||||
#define stringify(a) stringify_(a)
|
||||
#define stringify_(a) #a
|
||||
|
||||
@ -7,6 +7,132 @@ group0
|
||||
|
||||
|
||||
group1
|
||||
{
|
||||
data = 528, 528, 12, 12, 0.000000, 0.000000, 0.000000, 0.000000, 528, 528, 540, 540
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -13859400, 528.000000, 528.000000, 0, 228, 931, 3
|
||||
}
|
||||
|
||||
|
||||
group2
|
||||
{
|
||||
data = 240, 540, 12, 12, 0.000000, 0.000000, 0.000000, 0.000000, 240, 540, 252, 552
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -13859400, 240.000000, 540.000000, 0, 228, 931, 2
|
||||
}
|
||||
|
||||
|
||||
group3
|
||||
{
|
||||
data = 696, 0, 24, 48, 706.000000, 36.000000, 5.000000, 8.000000, 696, 0, 720, 48
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 696.000000, 0.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 0.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 696.000000, 12.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 12.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 696.000000, 24.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 24.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 696.000000, 36.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 36.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group4
|
||||
{
|
||||
data = 732, 0, 24, 48, 742.000000, 36.000000, 5.000000, 8.000000, 732, 0, 756, 48
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 732.000000, 0.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 0.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 732.000000, 12.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 12.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 732.000000, 24.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 24.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 732.000000, 36.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 36.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group5
|
||||
{
|
||||
data = 768, 0, 24, 48, 778.000000, 36.000000, 5.000000, 8.000000, 768, 0, 792, 48
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 768.000000, 0.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 0.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 768.000000, 12.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 12.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 768.000000, 24.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 24.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 768.000000, 36.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 36.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group6
|
||||
{
|
||||
data = 804, 0, 24, 48, 814.000000, 36.000000, 5.000000, 8.000000, 804, 0, 828, 48
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 804.000000, 0.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 0.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 804.000000, 12.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 12.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 804.000000, 24.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 24.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 804.000000, 36.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 36.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group7
|
||||
{
|
||||
data = 696, 48, 24, 48, 706.000000, 84.000000, 5.000000, 8.000000, 696, 48, 720, 96
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 696.000000, 48.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 48.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 696.000000, 60.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 60.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 696.000000, 72.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 72.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 696.000000, 84.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 708.000000, 84.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group8
|
||||
{
|
||||
data = 732, 48, 24, 48, 742.000000, 84.000000, 5.000000, 8.000000, 732, 48, 756, 96
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 732.000000, 48.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 48.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 732.000000, 60.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 60.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 732.000000, 72.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 72.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 732.000000, 84.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 744.000000, 84.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group9
|
||||
{
|
||||
data = 768, 48, 24, 48, 778.000000, 84.000000, 5.000000, 8.000000, 768, 48, 792, 96
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 768.000000, 48.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 48.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 768.000000, 60.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 60.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 768.000000, 72.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 72.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 768.000000, 84.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 780.000000, 84.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group10
|
||||
{
|
||||
data = 804, 48, 24, 48, 814.000000, 84.000000, 5.000000, 8.000000, 804, 48, 828, 96
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 804.000000, 48.000000, 312, 180, 761, 5
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 48.000000, 324, 180, 762, 5
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 804.000000, 60.000000, 312, 192, 810, 5
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 60.000000, 324, 192, 811, 5
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14855287, 804.000000, 72.000000, 312, 204, 859, 5
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 72.000000, 324, 204, 860, 5
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 804.000000, 84.000000, 312, 216, 908, 5
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 816.000000, 84.000000, 324, 216, 909, 5
|
||||
}
|
||||
|
||||
|
||||
group11
|
||||
{
|
||||
data = 444, 0, 72, 120, 472.000000, 100.000000, 18.000000, 12.000000, 444, 0, 516, 120
|
||||
tileRenderData0 = assets/maps/Decorations_c1_No_Shadow24x24as12x12.tsx, 14220, 0, 444.000000, 0.000000, 432, 96, 756, 1
|
||||
@ -68,7 +194,7 @@ group1
|
||||
}
|
||||
|
||||
|
||||
group2
|
||||
group12
|
||||
{
|
||||
data = 48, 12, 72, 120, 76.000000, 112.000000, 18.000000, 12.000000, 48, 12, 120, 132
|
||||
tileRenderData0 = assets/maps/Decorations_c1_No_Shadow24x24as12x12.tsx, 14220, 0, 48.000000, 12.000000, 432, 96, 756, 1
|
||||
@ -130,7 +256,7 @@ group2
|
||||
}
|
||||
|
||||
|
||||
group3
|
||||
group13
|
||||
{
|
||||
data = 408, 276, 72, 60, 415.000000, 307.000000, 56.000000, 24.000000, 408, 276, 480, 336
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14607288, 432.000000, 276.000000, 24, 216, 884, 1
|
||||
@ -157,7 +283,7 @@ group3
|
||||
}
|
||||
|
||||
|
||||
group4
|
||||
group14
|
||||
{
|
||||
data = 360, 312, 48, 48, 372.000000, 342.000000, 24.000000, 10.000000, 360, 312, 408, 360
|
||||
tileRenderData0 = assets/maps/64x64px_No_Shadow_Campfire_12x12.tsx, 13756, 0, 360.000000, 312.000000, 0, 0, 0, 1
|
||||
@ -179,7 +305,93 @@ group4
|
||||
}
|
||||
|
||||
|
||||
group5
|
||||
group15
|
||||
{
|
||||
data = 312, 384, 48, 48, 317.000000, 420.000000, 37.000000, 6.000000, 312, 384, 360, 432
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 312.000000, 384.000000, 336, 96, 420, 2
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10851464, 324.000000, 384.000000, 348, 96, 421, 2
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 336.000000, 384.000000, 360, 96, 422, 2
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 384.000000, 372, 96, 423, 2
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 312.000000, 396.000000, 336, 108, 469, 2
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12038302, 324.000000, 396.000000, 348, 108, 470, 2
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14864285, 336.000000, 396.000000, 360, 108, 471, 2
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 396.000000, 372, 108, 472, 2
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 312.000000, 408.000000, 336, 120, 518, 2
|
||||
tileRenderData9 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -13028276, 324.000000, 408.000000, 348, 120, 519, 2
|
||||
tileRenderData10 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 336.000000, 408.000000, 360, 120, 520, 2
|
||||
tileRenderData11 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 408.000000, 372, 120, 521, 2
|
||||
tileRenderData12 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 312.000000, 420.000000, 336, 132, 567, 2
|
||||
tileRenderData13 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 324.000000, 420.000000, 348, 132, 568, 2
|
||||
tileRenderData14 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 336.000000, 420.000000, 360, 132, 569, 2
|
||||
tileRenderData15 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 420.000000, 372, 132, 570, 2
|
||||
}
|
||||
|
||||
|
||||
group16
|
||||
{
|
||||
data = 252, 408, 84, 72, 256.000000, 447.000000, 69.000000, 27.000000, 252, 408, 336, 480
|
||||
tileRenderData0 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 252.000000, 408.000000, 0, 0, 0, 2
|
||||
tileRenderData1 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -13686200, 264.000000, 408.000000, 12, 0, 1, 2
|
||||
tileRenderData2 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -13025185, 276.000000, 408.000000, 24, 0, 2, 2
|
||||
tileRenderData3 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 288.000000, 408.000000, 36, 0, 3, 2
|
||||
tileRenderData4 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12228481, 252.000000, 420.000000, 0, 12, 56, 2
|
||||
tileRenderData5 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12232852, 264.000000, 420.000000, 12, 12, 57, 2
|
||||
tileRenderData6 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -13686200, 276.000000, 420.000000, 24, 12, 58, 2
|
||||
tileRenderData7 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 288.000000, 420.000000, 36, 12, 59, 2
|
||||
tileRenderData8 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12232852, 252.000000, 432.000000, 0, 24, 112, 2
|
||||
tileRenderData9 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12228481, 264.000000, 432.000000, 12, 24, 113, 2
|
||||
tileRenderData10 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12228481, 276.000000, 432.000000, 24, 24, 114, 2
|
||||
tileRenderData11 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 288.000000, 432.000000, 36, 24, 115, 2
|
||||
tileRenderData12 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -14847578, 300.000000, 432.000000, 48, 24, 116, 2
|
||||
tileRenderData13 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -14847578, 312.000000, 432.000000, 60, 24, 117, 2
|
||||
tileRenderData14 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 324.000000, 432.000000, 72, 24, 118, 2
|
||||
tileRenderData15 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12232852, 252.000000, 444.000000, 0, 36, 168, 2
|
||||
tileRenderData16 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -15069386, 264.000000, 444.000000, 12, 36, 169, 2
|
||||
tileRenderData17 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -13686200, 276.000000, 444.000000, 24, 36, 170, 2
|
||||
tileRenderData18 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12232852, 288.000000, 444.000000, 36, 36, 171, 2
|
||||
tileRenderData19 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -14855287, 300.000000, 444.000000, 48, 36, 172, 2
|
||||
tileRenderData20 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -11434335, 312.000000, 444.000000, 60, 36, 173, 2
|
||||
tileRenderData21 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 324.000000, 444.000000, 72, 36, 174, 2
|
||||
tileRenderData22 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -13686200, 252.000000, 456.000000, 0, 48, 224, 2
|
||||
tileRenderData23 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -11164996, 264.000000, 456.000000, 12, 48, 225, 2
|
||||
tileRenderData24 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, -12232852, 276.000000, 456.000000, 24, 48, 226, 2
|
||||
tileRenderData25 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 288.000000, 456.000000, 36, 48, 227, 2
|
||||
tileRenderData26 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 300.000000, 456.000000, 48, 48, 228, 2
|
||||
tileRenderData27 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 312.000000, 456.000000, 60, 48, 229, 2
|
||||
tileRenderData28 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 324.000000, 456.000000, 72, 48, 230, 2
|
||||
tileRenderData29 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 252.000000, 468.000000, 0, 60, 280, 2
|
||||
tileRenderData30 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 264.000000, 468.000000, 12, 60, 281, 2
|
||||
tileRenderData31 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 276.000000, 468.000000, 24, 60, 282, 2
|
||||
tileRenderData32 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 288.000000, 468.000000, 36, 60, 283, 2
|
||||
tileRenderData33 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 300.000000, 468.000000, 48, 60, 284, 2
|
||||
tileRenderData34 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 312.000000, 468.000000, 60, 60, 285, 2
|
||||
tileRenderData35 = assets/maps/112x96_Forge_No_Shadow_12x12.tsx, 13884, 0, 324.000000, 468.000000, 72, 60, 286, 2
|
||||
}
|
||||
|
||||
|
||||
group17
|
||||
{
|
||||
data = 336, 432, 48, 48, 343.000000, 456.000000, 34.000000, 19.000000, 336, 432, 384, 480
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 336.000000, 432.000000, 384, 96, 424, 2
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12038302, 348.000000, 432.000000, 396, 96, 425, 2
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12038302, 360.000000, 432.000000, 408, 96, 426, 2
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 372.000000, 432.000000, 420, 96, 427, 2
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -7041641, 336.000000, 444.000000, 384, 108, 473, 2
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -4998460, 348.000000, 444.000000, 396, 108, 474, 2
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 360.000000, 444.000000, 408, 108, 475, 2
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 372.000000, 444.000000, 420, 108, 476, 2
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 336.000000, 456.000000, 384, 120, 522, 2
|
||||
tileRenderData9 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 348.000000, 456.000000, 396, 120, 523, 2
|
||||
tileRenderData10 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 360.000000, 456.000000, 408, 120, 524, 2
|
||||
tileRenderData11 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 372.000000, 456.000000, 420, 120, 525, 2
|
||||
tileRenderData12 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 336.000000, 468.000000, 384, 132, 571, 2
|
||||
tileRenderData13 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 468.000000, 396, 132, 572, 2
|
||||
tileRenderData14 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 360.000000, 468.000000, 408, 132, 573, 2
|
||||
tileRenderData15 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 372.000000, 468.000000, 420, 132, 574, 2
|
||||
}
|
||||
|
||||
|
||||
group18
|
||||
{
|
||||
data = 0, 408, 72, 120, 28.000000, 508.000000, 18.000000, 12.000000, 0, 408, 72, 528
|
||||
tileRenderData0 = assets/maps/Decorations_c1_No_Shadow24x24as12x12.tsx, 14220, 0, 0.000000, 408.000000, 432, 96, 756, 1
|
||||
@ -241,7 +453,139 @@ group5
|
||||
}
|
||||
|
||||
|
||||
group6
|
||||
group19
|
||||
{
|
||||
data = 288, 504, 24, 24, 291.000000, 516.000000, 17.000000, 9.000000, 288, 504, 312, 528
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -7041641, 288.000000, 504.000000, 312, 120, 516, 2
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 300.000000, 504.000000, 324, 120, 517, 2
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 288.000000, 516.000000, 312, 132, 565, 2
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 300.000000, 516.000000, 324, 132, 566, 2
|
||||
}
|
||||
|
||||
|
||||
group20
|
||||
{
|
||||
data = 264, 504, 24, 24, 266.000000, 516.000000, 20.000000, 10.000000, 264, 504, 288, 528
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -13859400, 264.000000, 504.000000, 168, 96, 406, 2
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 276.000000, 504.000000, 180, 96, 407, 2
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 264.000000, 516.000000, 168, 108, 455, 2
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 276.000000, 516.000000, 180, 108, 456, 2
|
||||
}
|
||||
|
||||
|
||||
group21
|
||||
{
|
||||
data = 432, 492, 48, 48, 439.000000, 516.000000, 34.000000, 19.000000, 432, 492, 480, 540
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 432.000000, 492.000000, 384, 96, 424, 3
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12038302, 444.000000, 492.000000, 396, 96, 425, 3
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12038302, 456.000000, 492.000000, 408, 96, 426, 3
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 468.000000, 492.000000, 420, 96, 427, 3
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -7041641, 432.000000, 504.000000, 384, 108, 473, 3
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -4998460, 444.000000, 504.000000, 396, 108, 474, 3
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 456.000000, 504.000000, 408, 108, 475, 3
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 468.000000, 504.000000, 420, 108, 476, 3
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 432.000000, 516.000000, 384, 120, 522, 3
|
||||
tileRenderData9 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 444.000000, 516.000000, 396, 120, 523, 3
|
||||
tileRenderData10 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 456.000000, 516.000000, 408, 120, 524, 3
|
||||
tileRenderData11 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 468.000000, 516.000000, 420, 120, 525, 3
|
||||
tileRenderData12 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 432.000000, 528.000000, 384, 132, 571, 3
|
||||
tileRenderData13 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 444.000000, 528.000000, 396, 132, 572, 3
|
||||
tileRenderData14 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 456.000000, 528.000000, 408, 132, 573, 3
|
||||
tileRenderData15 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 468.000000, 528.000000, 420, 132, 574, 3
|
||||
}
|
||||
|
||||
|
||||
group22
|
||||
{
|
||||
data = 324, 516, 36, 36, 327.000000, 534.000000, 29.000000, 12.000000, 324, 516, 360, 552
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 324.000000, 516.000000, 276, 156, 660, 2
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 336.000000, 516.000000, 288, 156, 661, 2
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 516.000000, 300, 156, 662, 2
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 324.000000, 528.000000, 276, 168, 709, 2
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 336.000000, 528.000000, 288, 168, 710, 2
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 528.000000, 300, 168, 711, 2
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 324.000000, 540.000000, 276, 180, 758, 2
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 336.000000, 540.000000, 288, 180, 759, 2
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 348.000000, 540.000000, 300, 180, 760, 2
|
||||
}
|
||||
|
||||
|
||||
group23
|
||||
{
|
||||
data = 528, 516, 72, 60, 535.000000, 547.000000, 56.000000, 24.000000, 528, 516, 600, 576
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14607288, 552.000000, 516.000000, 24, 216, 884, 3
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 564.000000, 516.000000, 36, 216, 885, 3
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 576.000000, 516.000000, 48, 216, 886, 3
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12489076, 540.000000, 528.000000, 12, 228, 932, 3
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -8408375, 552.000000, 528.000000, 24, 228, 933, 3
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12489076, 564.000000, 528.000000, 36, 228, 934, 3
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 576.000000, 528.000000, 48, 228, 935, 3
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 528.000000, 540.000000, 0, 240, 980, 3
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 540.000000, 540.000000, 12, 240, 981, 3
|
||||
tileRenderData9 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 552.000000, 540.000000, 24, 240, 982, 3
|
||||
tileRenderData10 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 564.000000, 540.000000, 36, 240, 983, 3
|
||||
tileRenderData11 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 576.000000, 540.000000, 48, 240, 984, 3
|
||||
tileRenderData12 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 588.000000, 540.000000, 60, 240, 985, 3
|
||||
tileRenderData13 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 528.000000, 552.000000, 0, 252, 1029, 3
|
||||
tileRenderData14 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 540.000000, 552.000000, 12, 252, 1030, 3
|
||||
tileRenderData15 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 552.000000, 552.000000, 24, 252, 1031, 3
|
||||
tileRenderData16 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 564.000000, 552.000000, 36, 252, 1032, 3
|
||||
tileRenderData17 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 576.000000, 552.000000, 48, 252, 1033, 3
|
||||
tileRenderData18 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 588.000000, 552.000000, 60, 252, 1034, 3
|
||||
tileRenderData19 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 552.000000, 564.000000, 24, 264, 1080, 3
|
||||
tileRenderData20 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 564.000000, 564.000000, 36, 264, 1081, 3
|
||||
}
|
||||
|
||||
|
||||
group24
|
||||
{
|
||||
data = 432, 540, 60, 36, 439.000000, 561.000000, 47.000000, 10.000000, 432, 540, 492, 576
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 432.000000, 540.000000, 432, 0, 36, 3
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 444.000000, 540.000000, 444, 0, 37, 3
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 456.000000, 540.000000, 456, 0, 38, 3
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 468.000000, 540.000000, 468, 0, 39, 3
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 480.000000, 540.000000, 480, 0, 40, 3
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 432.000000, 552.000000, 432, 12, 85, 3
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 444.000000, 552.000000, 444, 12, 86, 3
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 456.000000, 552.000000, 456, 12, 87, 3
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 468.000000, 552.000000, 468, 12, 88, 3
|
||||
tileRenderData9 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 480.000000, 552.000000, 480, 12, 89, 3
|
||||
tileRenderData10 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 432.000000, 564.000000, 432, 24, 134, 3
|
||||
tileRenderData11 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 444.000000, 564.000000, 444, 24, 135, 3
|
||||
tileRenderData12 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 456.000000, 564.000000, 456, 24, 136, 3
|
||||
tileRenderData13 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 468.000000, 564.000000, 468, 24, 137, 3
|
||||
tileRenderData14 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 480.000000, 564.000000, 480, 24, 138, 3
|
||||
}
|
||||
|
||||
|
||||
group25
|
||||
{
|
||||
data = 240, 528, 72, 60, 247.000000, 559.000000, 56.000000, 24.000000, 240, 528, 312, 588
|
||||
tileRenderData0 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14607288, 264.000000, 528.000000, 24, 216, 884, 2
|
||||
tileRenderData1 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 276.000000, 528.000000, 36, 216, 885, 2
|
||||
tileRenderData2 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 288.000000, 528.000000, 48, 216, 886, 2
|
||||
tileRenderData3 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12489076, 252.000000, 540.000000, 12, 228, 932, 2
|
||||
tileRenderData4 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -8408375, 264.000000, 540.000000, 24, 228, 933, 2
|
||||
tileRenderData5 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -12489076, 276.000000, 540.000000, 36, 228, 934, 2
|
||||
tileRenderData6 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 288.000000, 540.000000, 48, 228, 935, 2
|
||||
tileRenderData7 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -14847578, 240.000000, 552.000000, 0, 240, 980, 2
|
||||
tileRenderData8 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15069386, 252.000000, 552.000000, 12, 240, 981, 2
|
||||
tileRenderData9 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 264.000000, 552.000000, 24, 240, 982, 2
|
||||
tileRenderData10 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 276.000000, 552.000000, 36, 240, 983, 2
|
||||
tileRenderData11 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -15187336, 288.000000, 552.000000, 48, 240, 984, 2
|
||||
tileRenderData12 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 300.000000, 552.000000, 60, 240, 985, 2
|
||||
tileRenderData13 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 240.000000, 564.000000, 0, 252, 1029, 2
|
||||
tileRenderData14 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 252.000000, 564.000000, 12, 252, 1030, 2
|
||||
tileRenderData15 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, -10317396, 264.000000, 564.000000, 24, 252, 1031, 2
|
||||
tileRenderData16 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 276.000000, 564.000000, 36, 252, 1032, 2
|
||||
tileRenderData17 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 288.000000, 564.000000, 48, 252, 1033, 2
|
||||
tileRenderData18 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 300.000000, 564.000000, 60, 252, 1034, 2
|
||||
tileRenderData19 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 264.000000, 576.000000, 24, 264, 1080, 2
|
||||
tileRenderData20 = assets/maps/16x16px_grid_Props_No_Shadow_12x12.tsx, 11649, 0, 276.000000, 576.000000, 36, 264, 1081, 2
|
||||
}
|
||||
|
||||
|
||||
group26
|
||||
{
|
||||
data = 708, 492, 72, 120, 736.000000, 592.000000, 18.000000, 12.000000, 708, 492, 780, 612
|
||||
tileRenderData0 = assets/maps/Decorations_c1_No_Shadow24x24as12x12.tsx, 14220, 0, 708.000000, 492.000000, 432, 96, 756, 1
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
INTRO_MAP = 2024-09-13 21:28:58.8931211
|
||||
INTRO_MAP = 2026-02-23 21:02:53.4861099
|
||||
HUB = 2024-09-13 21:41:17.0093533
|
||||
TEST_MAP = 2026-01-26 20:40:12.7201277
|
||||
BOSS_1 = 2026-02-23 20:43:43.6912540
|
||||
|
||||
Binary file not shown.
@ -40,6 +40,7 @@ All rights reserved.
|
||||
#include <functional>
|
||||
#include <map>
|
||||
#include <unordered_map>
|
||||
#include<algorithm>
|
||||
|
||||
//A class that has an initialization lock so that when the lock is activated, any further gets that are missing items in it will report themselves for easier debugging detection.
|
||||
template<typename T,typename O>
|
||||
@ -65,6 +66,9 @@ public:
|
||||
O&at(T key){
|
||||
return map.at(key);
|
||||
}
|
||||
const O&at(T key)const{
|
||||
return map.at(key);
|
||||
}
|
||||
auto insert(T key,O obj){
|
||||
return map.insert({key,obj});
|
||||
}
|
||||
@ -134,7 +138,10 @@ public:
|
||||
}
|
||||
}
|
||||
O&at(T key){
|
||||
return items[map.at(key)];
|
||||
return items.at(map.at(key));
|
||||
}
|
||||
const O&at(T key)const{
|
||||
return items.at(map.at(key));
|
||||
}
|
||||
size_t count(T key){
|
||||
return map.count(key);
|
||||
@ -151,16 +158,28 @@ public:
|
||||
map.clear();
|
||||
items.clear();
|
||||
}
|
||||
auto begin(){
|
||||
return items.begin();
|
||||
}
|
||||
auto end(){
|
||||
return items.end();
|
||||
}
|
||||
auto begin()const{
|
||||
return items.begin();
|
||||
}
|
||||
auto end()const{
|
||||
return items.end();
|
||||
}
|
||||
auto contains(const T&key)const{
|
||||
return map.contains(key);
|
||||
auto contains(O&obj){
|
||||
return std::ranges::contains(items,obj);
|
||||
}
|
||||
auto contains(const O&obj){
|
||||
return std::ranges::contains(items,obj);
|
||||
}
|
||||
void insert(T key,O obj){
|
||||
(*this)[key]=obj;
|
||||
}
|
||||
auto find(const O&obj)const{
|
||||
return std::find(items.begin(),items.end(),obj);
|
||||
}
|
||||
};
|
||||
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user