generated from sigonasr2/CPlusPlusProjectTemplate
parent
b88c08261f
commit
5e81a2ce8f
@ -0,0 +1,438 @@ |
|||||||
|
# Created by https://www.toptal.com/developers/gitignore/api/visualstudio,c++ |
||||||
|
# Edit at https://www.toptal.com/developers/gitignore?templates=visualstudio,c++ |
||||||
|
|
||||||
|
### C++ ### |
||||||
|
# Prerequisites |
||||||
|
*.d |
||||||
|
*.ini |
||||||
|
|
||||||
|
# Compiled Object files |
||||||
|
*.slo |
||||||
|
*.lo |
||||||
|
*.o |
||||||
|
*.obj |
||||||
|
|
||||||
|
# Precompiled Headers |
||||||
|
*.gch |
||||||
|
*.pch |
||||||
|
|
||||||
|
# Compiled Dynamic libraries |
||||||
|
*.so |
||||||
|
*.dylib |
||||||
|
*.dll |
||||||
|
|
||||||
|
# Fortran module files |
||||||
|
*.mod |
||||||
|
*.smod |
||||||
|
|
||||||
|
# Compiled Static libraries |
||||||
|
*.lai |
||||||
|
*.la |
||||||
|
*.a |
||||||
|
*.lib |
||||||
|
|
||||||
|
# Executables |
||||||
|
*.exe |
||||||
|
*.out |
||||||
|
*.app |
||||||
|
|
||||||
|
### VisualStudio ### |
||||||
|
## Ignore Visual Studio temporary files, build results, and |
||||||
|
## files generated by popular Visual Studio add-ons. |
||||||
|
## |
||||||
|
## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore |
||||||
|
|
||||||
|
# User-specific files |
||||||
|
*.rsuser |
||||||
|
*.suo |
||||||
|
*.user |
||||||
|
*.userosscache |
||||||
|
*.sln.docstates |
||||||
|
|
||||||
|
# User-specific files (MonoDevelop/Xamarin Studio) |
||||||
|
*.userprefs |
||||||
|
|
||||||
|
# Mono auto generated files |
||||||
|
mono_crash.* |
||||||
|
|
||||||
|
# Build results |
||||||
|
[Dd]ebug/ |
||||||
|
[Dd]ebugPublic/ |
||||||
|
[Rr]elease/ |
||||||
|
[Rr]eleases/ |
||||||
|
x64/ |
||||||
|
x86/ |
||||||
|
[Ww][Ii][Nn]32/ |
||||||
|
[Aa][Rr][Mm]/ |
||||||
|
[Aa][Rr][Mm]64/ |
||||||
|
bld/ |
||||||
|
[Bb]in/ |
||||||
|
[Oo]bj/ |
||||||
|
[Ll]og/ |
||||||
|
[Ll]ogs/ |
||||||
|
|
||||||
|
# Visual Studio 2015/2017 cache/options directory |
||||||
|
.vs/ |
||||||
|
# Uncomment if you have tasks that create the project's static files in wwwroot |
||||||
|
#wwwroot/ |
||||||
|
|
||||||
|
# Visual Studio 2017 auto generated files |
||||||
|
Generated\ Files/ |
||||||
|
|
||||||
|
# MSTest test Results |
||||||
|
[Tt]est[Rr]esult*/ |
||||||
|
[Bb]uild[Ll]og.* |
||||||
|
|
||||||
|
# NUnit |
||||||
|
*.VisualState.xml |
||||||
|
TestResult.xml |
||||||
|
nunit-*.xml |
||||||
|
|
||||||
|
# Build Results of an ATL Project |
||||||
|
[Dd]ebugPS/ |
||||||
|
[Rr]eleasePS/ |
||||||
|
dlldata.c |
||||||
|
|
||||||
|
# Benchmark Results |
||||||
|
BenchmarkDotNet.Artifacts/ |
||||||
|
|
||||||
|
# .NET Core |
||||||
|
project.lock.json |
||||||
|
project.fragment.lock.json |
||||||
|
artifacts/ |
||||||
|
|
||||||
|
# ASP.NET Scaffolding |
||||||
|
ScaffoldingReadMe.txt |
||||||
|
|
||||||
|
# StyleCop |
||||||
|
StyleCopReport.xml |
||||||
|
|
||||||
|
# Files built by Visual Studio |
||||||
|
*_i.c |
||||||
|
*_p.c |
||||||
|
*_h.h |
||||||
|
*.ilk |
||||||
|
*.meta |
||||||
|
*.iobj |
||||||
|
*.pdb |
||||||
|
*.ipdb |
||||||
|
*.pgc |
||||||
|
*.pgd |
||||||
|
*.rsp |
||||||
|
*.sbr |
||||||
|
*.tlb |
||||||
|
*.tli |
||||||
|
*.tlh |
||||||
|
*.tmp |
||||||
|
*.tmp_proj |
||||||
|
*_wpftmp.csproj |
||||||
|
*.log |
||||||
|
*.tlog |
||||||
|
*.vspscc |
||||||
|
*.vssscc |
||||||
|
.builds |
||||||
|
*.pidb |
||||||
|
*.svclog |
||||||
|
*.scc |
||||||
|
|
||||||
|
# Chutzpah Test files |
||||||
|
_Chutzpah* |
||||||
|
|
||||||
|
# Visual C++ cache files |
||||||
|
ipch/ |
||||||
|
*.aps |
||||||
|
*.ncb |
||||||
|
*.opendb |
||||||
|
*.opensdf |
||||||
|
*.sdf |
||||||
|
*.cachefile |
||||||
|
*.VC.db |
||||||
|
*.VC.VC.opendb |
||||||
|
|
||||||
|
# Visual Studio profiler |
||||||
|
*.psess |
||||||
|
*.vsp |
||||||
|
*.vspx |
||||||
|
*.sap |
||||||
|
|
||||||
|
# Visual Studio Trace Files |
||||||
|
*.e2e |
||||||
|
|
||||||
|
# TFS 2012 Local Workspace |
||||||
|
$tf/ |
||||||
|
|
||||||
|
# Guidance Automation Toolkit |
||||||
|
*.gpState |
||||||
|
|
||||||
|
# ReSharper is a .NET coding add-in |
||||||
|
_ReSharper*/ |
||||||
|
*.[Rr]e[Ss]harper |
||||||
|
*.DotSettings.user |
||||||
|
|
||||||
|
# TeamCity is a build add-in |
||||||
|
_TeamCity* |
||||||
|
|
||||||
|
# DotCover is a Code Coverage Tool |
||||||
|
*.dotCover |
||||||
|
|
||||||
|
# AxoCover is a Code Coverage Tool |
||||||
|
.axoCover/* |
||||||
|
!.axoCover/settings.json |
||||||
|
|
||||||
|
# Coverlet is a free, cross platform Code Coverage Tool |
||||||
|
coverage*.json |
||||||
|
coverage*.xml |
||||||
|
coverage*.info |
||||||
|
|
||||||
|
# Visual Studio code coverage results |
||||||
|
*.coverage |
||||||
|
*.coveragexml |
||||||
|
|
||||||
|
# NCrunch |
||||||
|
_NCrunch_* |
||||||
|
.*crunch*.local.xml |
||||||
|
nCrunchTemp_* |
||||||
|
|
||||||
|
# MightyMoose |
||||||
|
*.mm.* |
||||||
|
AutoTest.Net/ |
||||||
|
|
||||||
|
# Web workbench (sass) |
||||||
|
.sass-cache/ |
||||||
|
|
||||||
|
# Installshield output folder |
||||||
|
[Ee]xpress/ |
||||||
|
|
||||||
|
# DocProject is a documentation generator add-in |
||||||
|
DocProject/buildhelp/ |
||||||
|
DocProject/Help/*.HxT |
||||||
|
DocProject/Help/*.HxC |
||||||
|
DocProject/Help/*.hhc |
||||||
|
DocProject/Help/*.hhk |
||||||
|
DocProject/Help/*.hhp |
||||||
|
DocProject/Help/Html2 |
||||||
|
DocProject/Help/html |
||||||
|
|
||||||
|
# Click-Once directory |
||||||
|
publish/ |
||||||
|
|
||||||
|
# Publish Web Output |
||||||
|
*.[Pp]ublish.xml |
||||||
|
*.azurePubxml |
||||||
|
# Note: Comment the next line if you want to checkin your web deploy settings, |
||||||
|
# but database connection strings (with potential passwords) will be unencrypted |
||||||
|
*.pubxml |
||||||
|
*.publishproj |
||||||
|
|
||||||
|
# Microsoft Azure Web App publish settings. Comment the next line if you want to |
||||||
|
# checkin your Azure Web App publish settings, but sensitive information contained |
||||||
|
# in these scripts will be unencrypted |
||||||
|
PublishScripts/ |
||||||
|
|
||||||
|
# NuGet Packages |
||||||
|
*.nupkg |
||||||
|
# NuGet Symbol Packages |
||||||
|
*.snupkg |
||||||
|
# The packages folder can be ignored because of Package Restore |
||||||
|
**/[Pp]ackages/* |
||||||
|
# except build/, which is used as an MSBuild target. |
||||||
|
!**/[Pp]ackages/build/ |
||||||
|
# Uncomment if necessary however generally it will be regenerated when needed |
||||||
|
#!**/[Pp]ackages/repositories.config |
||||||
|
# NuGet v3's project.json files produces more ignorable files |
||||||
|
*.nuget.props |
||||||
|
*.nuget.targets |
||||||
|
|
||||||
|
# Microsoft Azure Build Output |
||||||
|
csx/ |
||||||
|
*.build.csdef |
||||||
|
|
||||||
|
# Microsoft Azure Emulator |
||||||
|
ecf/ |
||||||
|
rcf/ |
||||||
|
|
||||||
|
# Windows Store app package directories and files |
||||||
|
AppPackages/ |
||||||
|
BundleArtifacts/ |
||||||
|
Package.StoreAssociation.xml |
||||||
|
_pkginfo.txt |
||||||
|
*.appx |
||||||
|
*.appxbundle |
||||||
|
*.appxupload |
||||||
|
|
||||||
|
# Visual Studio cache files |
||||||
|
# files ending in .cache can be ignored |
||||||
|
*.[Cc]ache |
||||||
|
# but keep track of directories ending in .cache |
||||||
|
!?*.[Cc]ache/ |
||||||
|
|
||||||
|
# Others |
||||||
|
ClientBin/ |
||||||
|
~$* |
||||||
|
*~ |
||||||
|
*.dbmdl |
||||||
|
*.dbproj.schemaview |
||||||
|
*.jfm |
||||||
|
*.pfx |
||||||
|
*.publishsettings |
||||||
|
orleans.codegen.cs |
||||||
|
|
||||||
|
# Including strong name files can present a security risk |
||||||
|
# (https://github.com/github/gitignore/pull/2483#issue-259490424) |
||||||
|
#*.snk |
||||||
|
|
||||||
|
# Since there are multiple workflows, uncomment next line to ignore bower_components |
||||||
|
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) |
||||||
|
#bower_components/ |
||||||
|
|
||||||
|
# RIA/Silverlight projects |
||||||
|
Generated_Code/ |
||||||
|
|
||||||
|
# Backup & report files from converting an old project file |
||||||
|
# to a newer Visual Studio version. Backup files are not needed, |
||||||
|
# because we have git ;-) |
||||||
|
_UpgradeReport_Files/ |
||||||
|
Backup*/ |
||||||
|
UpgradeLog*.XML |
||||||
|
UpgradeLog*.htm |
||||||
|
ServiceFabricBackup/ |
||||||
|
*.rptproj.bak |
||||||
|
|
||||||
|
# SQL Server files |
||||||
|
*.mdf |
||||||
|
*.ldf |
||||||
|
*.ndf |
||||||
|
|
||||||
|
# Business Intelligence projects |
||||||
|
*.rdl.data |
||||||
|
*.bim.layout |
||||||
|
*.bim_*.settings |
||||||
|
*.rptproj.rsuser |
||||||
|
*- [Bb]ackup.rdl |
||||||
|
*- [Bb]ackup ([0-9]).rdl |
||||||
|
*- [Bb]ackup ([0-9][0-9]).rdl |
||||||
|
|
||||||
|
# Microsoft Fakes |
||||||
|
FakesAssemblies/ |
||||||
|
|
||||||
|
# GhostDoc plugin setting file |
||||||
|
*.GhostDoc.xml |
||||||
|
|
||||||
|
# Node.js Tools for Visual Studio |
||||||
|
.ntvs_analysis.dat |
||||||
|
node_modules/ |
||||||
|
|
||||||
|
# Visual Studio 6 build log |
||||||
|
*.plg |
||||||
|
|
||||||
|
# Visual Studio 6 workspace options file |
||||||
|
*.opt |
||||||
|
|
||||||
|
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) |
||||||
|
*.vbw |
||||||
|
|
||||||
|
# Visual Studio 6 auto-generated project file (contains which files were open etc.) |
||||||
|
*.vbp |
||||||
|
|
||||||
|
# Visual Studio 6 workspace and project file (working project files containing files to include in project) |
||||||
|
*.dsw |
||||||
|
*.dsp |
||||||
|
|
||||||
|
# Visual Studio 6 technical files |
||||||
|
|
||||||
|
# Visual Studio LightSwitch build output |
||||||
|
**/*.HTMLClient/GeneratedArtifacts |
||||||
|
**/*.DesktopClient/GeneratedArtifacts |
||||||
|
**/*.DesktopClient/ModelManifest.xml |
||||||
|
**/*.Server/GeneratedArtifacts |
||||||
|
**/*.Server/ModelManifest.xml |
||||||
|
_Pvt_Extensions |
||||||
|
|
||||||
|
# Paket dependency manager |
||||||
|
.paket/paket.exe |
||||||
|
paket-files/ |
||||||
|
|
||||||
|
# FAKE - F# Make |
||||||
|
.fake/ |
||||||
|
|
||||||
|
# CodeRush personal settings |
||||||
|
.cr/personal |
||||||
|
|
||||||
|
# Python Tools for Visual Studio (PTVS) |
||||||
|
__pycache__/ |
||||||
|
*.pyc |
||||||
|
|
||||||
|
# Cake - Uncomment if you are using it |
||||||
|
# tools/** |
||||||
|
# !tools/packages.config |
||||||
|
|
||||||
|
# Tabs Studio |
||||||
|
*.tss |
||||||
|
|
||||||
|
# Telerik's JustMock configuration file |
||||||
|
*.jmconfig |
||||||
|
|
||||||
|
# BizTalk build output |
||||||
|
*.btp.cs |
||||||
|
*.btm.cs |
||||||
|
*.odx.cs |
||||||
|
*.xsd.cs |
||||||
|
|
||||||
|
# OpenCover UI analysis results |
||||||
|
OpenCover/ |
||||||
|
|
||||||
|
# Azure Stream Analytics local run output |
||||||
|
ASALocalRun/ |
||||||
|
|
||||||
|
# MSBuild Binary and Structured Log |
||||||
|
*.binlog |
||||||
|
|
||||||
|
# NVidia Nsight GPU debugger configuration file |
||||||
|
*.nvuser |
||||||
|
|
||||||
|
# MFractors (Xamarin productivity tool) working folder |
||||||
|
.mfractor/ |
||||||
|
|
||||||
|
# Local History for Visual Studio |
||||||
|
.localhistory/ |
||||||
|
|
||||||
|
# Visual Studio History (VSHistory) files |
||||||
|
.vshistory/ |
||||||
|
|
||||||
|
# BeatPulse healthcheck temp database |
||||||
|
healthchecksdb |
||||||
|
|
||||||
|
# Backup folder for Package Reference Convert tool in Visual Studio 2017 |
||||||
|
MigrationBackup/ |
||||||
|
|
||||||
|
# Ionide (cross platform F# VS Code tools) working folder |
||||||
|
.ionide/ |
||||||
|
|
||||||
|
# Fody - auto-generated XML schema |
||||||
|
FodyWeavers.xsd |
||||||
|
|
||||||
|
# VS Code files for those working on multiple tools |
||||||
|
.vscode/* |
||||||
|
!.vscode/settings.json |
||||||
|
!.vscode/tasks.json |
||||||
|
!.vscode/launch.json |
||||||
|
!.vscode/extensions.json |
||||||
|
*.code-workspace |
||||||
|
|
||||||
|
# Local History for Visual Studio Code |
||||||
|
.history/ |
||||||
|
|
||||||
|
# Windows Installer files from build outputs |
||||||
|
*.cab |
||||||
|
*.msi |
||||||
|
*.msix |
||||||
|
*.msm |
||||||
|
*.msp |
||||||
|
|
||||||
|
# JetBrains Rider |
||||||
|
*.sln.iml |
||||||
|
|
||||||
|
### VisualStudio Patch ### |
||||||
|
# Additional files built by Visual Studio |
||||||
|
|
||||||
|
# End of https://www.toptal.com/developers/gitignore/api/visualstudio,c++ |
@ -0,0 +1,44 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
#pragma once |
||||||
|
#include "olcUTIL_Geometry2D.h" |
||||||
|
|
||||||
|
using namespace olc; |
||||||
|
#include <array> |
||||||
|
|
||||||
|
using Quadrilateral=std::array<vf2d,4>; |
@ -0,0 +1,171 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
#pragma once |
||||||
|
#include <sstream> |
||||||
|
#include <map> |
||||||
|
#include <unordered_map> |
||||||
|
#include <fstream> |
||||||
|
|
||||||
|
#include "olcUTIL_Geometry2D.h" |
||||||
|
#include "Tileset.h" |
||||||
|
|
||||||
|
using namespace olc; |
||||||
|
using namespace olc::utils; |
||||||
|
|
||||||
|
class TSXParser{ |
||||||
|
public: |
||||||
|
inline Tileset&GetData(){ |
||||||
|
return parsedTilesetInfo; |
||||||
|
} |
||||||
|
private: |
||||||
|
Tileset parsedTilesetInfo; |
||||||
|
int previousTagID; |
||||||
|
inline void ParseTag(std::string tag){ |
||||||
|
XMLTag newTag; |
||||||
|
//First character is a '<' so we discard it.
|
||||||
|
tag.erase(0,1); tag.erase(tag.length()-1,1); //Erase the first and last characters in the tag. Now parse by spaces.
|
||||||
|
std::stringstream s(tag); //Turn it into a string stream to now parse into individual whitespaces.
|
||||||
|
std::string data; |
||||||
|
while (s.good()) { |
||||||
|
int quotationMarkCount=0; |
||||||
|
bool pastEquals=false; |
||||||
|
data=""; |
||||||
|
bool valid=false; |
||||||
|
while(s.good()){ |
||||||
|
int character=s.get(); |
||||||
|
if(character=='"'){ |
||||||
|
quotationMarkCount++; |
||||||
|
} |
||||||
|
if(character==' '&"ationMarkCount%2==0){ |
||||||
|
valid=true; |
||||||
|
break; |
||||||
|
} |
||||||
|
data+=character; |
||||||
|
if(pastEquals&"ationMarkCount%2==0){ |
||||||
|
valid=true; |
||||||
|
break; |
||||||
|
} |
||||||
|
if(character=='='&"ationMarkCount%2==0){ |
||||||
|
pastEquals=true; |
||||||
|
} |
||||||
|
} |
||||||
|
if(valid&&data.length()>0){ |
||||||
|
if (newTag.tag.length()==0) { //Tag's empty, so first line is the tag.
|
||||||
|
newTag.tag=data; |
||||||
|
} else { |
||||||
|
std::string key = data.substr(0,data.find("=")); |
||||||
|
std::string value = data.substr(data.find("=")+1,std::string::npos); |
||||||
|
|
||||||
|
//Strip Quotation marks.
|
||||||
|
value = value.substr(1,std::string::npos); |
||||||
|
value = value.substr(0,value.length()-1); |
||||||
|
|
||||||
|
newTag.data[key]=value; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
if (newTag.tag=="tileset") { |
||||||
|
parsedTilesetInfo.tilewidth=stoi(newTag.data["tilewidth"]); |
||||||
|
parsedTilesetInfo.tileheight=stoi(newTag.data["tileheight"]); |
||||||
|
parsedTilesetInfo.columns=stoi(newTag.data["columns"]); |
||||||
|
} else |
||||||
|
if (newTag.tag=="image") { |
||||||
|
parsedTilesetInfo.ImageData=newTag; |
||||||
|
parsedTilesetInfo.filename=newTag.GetString("source"); |
||||||
|
parsedTilesetInfo.imagewidth=newTag.GetInteger("width"); |
||||||
|
parsedTilesetInfo.imageheight=newTag.GetInteger("height"); |
||||||
|
} else |
||||||
|
if (newTag.tag=="property"){ |
||||||
|
if(newTag.data["name"]=="Name"){ |
||||||
|
std::string objectName=newTag.data["value"]; |
||||||
|
parsedTilesetInfo.objects[objectName].AddTile(parsedTilesetInfo,previousTagID); |
||||||
|
} |
||||||
|
} else |
||||||
|
if (newTag.tag=="tile"){ |
||||||
|
previousTagID=newTag.GetInteger("id"); |
||||||
|
} |
||||||
|
}; |
||||||
|
public: |
||||||
|
inline TSXParser(std::string file) |
||||||
|
:previousTagID(-1){ |
||||||
|
std::ifstream f(file,std::ios::in); |
||||||
|
|
||||||
|
std::string accumulator=""; |
||||||
|
|
||||||
|
while (f.good()) { |
||||||
|
std::string data; |
||||||
|
f>>data; |
||||||
|
if (data.empty()) continue; |
||||||
|
|
||||||
|
if (accumulator.length()>0) { |
||||||
|
accumulator+=" "+data; |
||||||
|
//Check if it ends with '>'
|
||||||
|
if (data[data.length()-1]=='>') { |
||||||
|
ParseTag(accumulator); |
||||||
|
accumulator=""; |
||||||
|
} |
||||||
|
} else |
||||||
|
if (data[0]=='<') { |
||||||
|
//Beginning of XML tag.
|
||||||
|
accumulator=data; |
||||||
|
if(accumulator.length()>1&&accumulator.at(1)=='/'){ |
||||||
|
accumulator=""; //Restart because this is an end tag.
|
||||||
|
} |
||||||
|
if(accumulator.length()>1&&accumulator.find('>')!=std::string::npos){ |
||||||
|
accumulator=""; //Restart because this tag has nothing in it!
|
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
}; |
||||||
|
|
||||||
|
//#define TSX_PARSER_SETUP
|
||||||
|
|
||||||
|
std::ostream&operator<<(std::ostream& os, Tileset& rhs){ |
||||||
|
os<<rhs.ImageData.FormatTagData(rhs.ImageData.data)<<"\n"; |
||||||
|
return os; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
std::ostream& operator << (std::ostream& os, XMLTag& rhs){
|
||||||
|
os <<
|
||||||
|
rhs.tag <<"\n"<<
|
||||||
|
rhs.FormatTagData(rhs.data) <<"\n"; |
||||||
|
return os; |
||||||
|
} |
@ -0,0 +1,175 @@ |
|||||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||||
|
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
||||||
|
<ItemGroup Label="ProjectConfigurations"> |
||||||
|
<ProjectConfiguration Include="Debug|Win32"> |
||||||
|
<Configuration>Debug</Configuration> |
||||||
|
<Platform>Win32</Platform> |
||||||
|
</ProjectConfiguration> |
||||||
|
<ProjectConfiguration Include="Release|Win32"> |
||||||
|
<Configuration>Release</Configuration> |
||||||
|
<Platform>Win32</Platform> |
||||||
|
</ProjectConfiguration> |
||||||
|
<ProjectConfiguration Include="Debug|x64"> |
||||||
|
<Configuration>Debug</Configuration> |
||||||
|
<Platform>x64</Platform> |
||||||
|
</ProjectConfiguration> |
||||||
|
<ProjectConfiguration Include="Release|x64"> |
||||||
|
<Configuration>Release</Configuration> |
||||||
|
<Platform>x64</Platform> |
||||||
|
</ProjectConfiguration> |
||||||
|
</ItemGroup> |
||||||
|
<PropertyGroup Label="Globals"> |
||||||
|
<VCProjectVersion>17.0</VCProjectVersion> |
||||||
|
<Keyword>Win32Proj</Keyword> |
||||||
|
<ProjectGuid>{1dce7e68-f810-4183-83f3-233a8ee41027}</ProjectGuid> |
||||||
|
<RootNamespace>TiledCollisionEditor</RootNamespace> |
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion> |
||||||
|
</PropertyGroup> |
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> |
||||||
|
<ConfigurationType>Application</ConfigurationType> |
||||||
|
<UseDebugLibraries>true</UseDebugLibraries> |
||||||
|
<PlatformToolset>v143</PlatformToolset> |
||||||
|
<CharacterSet>Unicode</CharacterSet> |
||||||
|
</PropertyGroup> |
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> |
||||||
|
<ConfigurationType>Application</ConfigurationType> |
||||||
|
<UseDebugLibraries>false</UseDebugLibraries> |
||||||
|
<PlatformToolset>v143</PlatformToolset> |
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization> |
||||||
|
<CharacterSet>Unicode</CharacterSet> |
||||||
|
</PropertyGroup> |
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> |
||||||
|
<ConfigurationType>Application</ConfigurationType> |
||||||
|
<UseDebugLibraries>true</UseDebugLibraries> |
||||||
|
<PlatformToolset>v143</PlatformToolset> |
||||||
|
<CharacterSet>Unicode</CharacterSet> |
||||||
|
</PropertyGroup> |
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> |
||||||
|
<ConfigurationType>Application</ConfigurationType> |
||||||
|
<UseDebugLibraries>false</UseDebugLibraries> |
||||||
|
<PlatformToolset>v143</PlatformToolset> |
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization> |
||||||
|
<CharacterSet>Unicode</CharacterSet> |
||||||
|
</PropertyGroup> |
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
||||||
|
<ImportGroup Label="ExtensionSettings"> |
||||||
|
</ImportGroup> |
||||||
|
<ImportGroup Label="Shared"> |
||||||
|
</ImportGroup> |
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
||||||
|
</ImportGroup> |
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
||||||
|
</ImportGroup> |
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
||||||
|
</ImportGroup> |
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
||||||
|
</ImportGroup> |
||||||
|
<PropertyGroup Label="UserMacros" /> |
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
||||||
|
<ClCompile> |
||||||
|
<WarningLevel>Level3</WarningLevel> |
||||||
|
<SDLCheck>true</SDLCheck> |
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
||||||
|
<ConformanceMode>true</ConformanceMode> |
||||||
|
</ClCompile> |
||||||
|
<Link> |
||||||
|
<SubSystem>Console</SubSystem> |
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation> |
||||||
|
</Link> |
||||||
|
</ItemDefinitionGroup> |
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
||||||
|
<ClCompile> |
||||||
|
<WarningLevel>Level3</WarningLevel> |
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking> |
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions> |
||||||
|
<SDLCheck>true</SDLCheck> |
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
||||||
|
<ConformanceMode>true</ConformanceMode> |
||||||
|
</ClCompile> |
||||||
|
<Link> |
||||||
|
<SubSystem>Console</SubSystem> |
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
||||||
|
<OptimizeReferences>true</OptimizeReferences> |
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation> |
||||||
|
</Link> |
||||||
|
</ItemDefinitionGroup> |
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
||||||
|
<ClCompile> |
||||||
|
<WarningLevel>Level3</WarningLevel> |
||||||
|
<SDLCheck>true</SDLCheck> |
||||||
|
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
||||||
|
<ConformanceMode>true</ConformanceMode> |
||||||
|
<LanguageStandard>stdcpp17</LanguageStandard> |
||||||
|
</ClCompile> |
||||||
|
<Link> |
||||||
|
<SubSystem>Console</SubSystem> |
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation> |
||||||
|
</Link> |
||||||
|
</ItemDefinitionGroup> |
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
||||||
|
<ClCompile> |
||||||
|
<WarningLevel>Level3</WarningLevel> |
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking> |
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions> |
||||||
|
<SDLCheck>true</SDLCheck> |
||||||
|
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
||||||
|
<ConformanceMode>true</ConformanceMode> |
||||||
|
</ClCompile> |
||||||
|
<Link> |
||||||
|
<SubSystem>Console</SubSystem> |
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
||||||
|
<OptimizeReferences>true</OptimizeReferences> |
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation> |
||||||
|
</Link> |
||||||
|
</ItemDefinitionGroup> |
||||||
|
<ItemGroup> |
||||||
|
<ClInclude Include="olcPGEX_QuickGUI.h"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClInclude> |
||||||
|
<ClInclude Include="olcPGEX_TransformedView.h" /> |
||||||
|
<ClInclude Include="olcUTIL_Camera2D.h" /> |
||||||
|
<ClInclude Include="olcUTIL_Geometry2D.h" /> |
||||||
|
<ClInclude Include="pixelGameEngine.h" /> |
||||||
|
<ClInclude Include="Quadrilateral.h"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClInclude> |
||||||
|
<ClInclude Include="Tileset.h"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClInclude> |
||||||
|
<ClInclude Include="TilesetObject.h"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClInclude> |
||||||
|
<ClInclude Include="TSXParser.h"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClInclude> |
||||||
|
<ClInclude Include="XMLTag.h"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClInclude> |
||||||
|
</ItemGroup> |
||||||
|
<ItemGroup> |
||||||
|
<ClCompile Include="main.cpp" /> |
||||||
|
<ClCompile Include="pixelGameEngine.cpp" /> |
||||||
|
<ClCompile Include="TilesetObject.cpp"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClCompile> |
||||||
|
<ClCompile Include="XMLTag.cpp"> |
||||||
|
<SubType> |
||||||
|
</SubType> |
||||||
|
</ClCompile> |
||||||
|
</ItemGroup> |
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
||||||
|
<ImportGroup Label="ExtensionTargets"> |
||||||
|
</ImportGroup> |
||||||
|
</Project> |
@ -0,0 +1,810 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<tileset version="1.10" tiledversion="1.10.2" name="Basic Tileset" tilewidth="16" tileheight="16" tilecount="864" columns="32"> |
||||||
|
<transformations hflip="1" vflip="1" rotate="0" preferuntransformed="0"/> |
||||||
|
<image source="tilemap-3-normal.png" width="512" height="432"/> |
||||||
|
<tile id="3" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="4" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="8" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="9" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="10" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="11" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="12" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="13" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="14" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="15" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="16" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="17" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="18" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="19" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="20" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="21" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="22" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="23" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="24" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="35" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="36" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="40" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="41" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="42" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="43" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="44" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="45" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="46" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="47" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="48" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="49" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="50" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="51" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="52" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="53" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="54" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="55" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="56" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="67" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="68" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="72" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="73" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="74" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="75" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="76" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="77" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="78" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="79" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="80" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="81" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="82" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="83" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="84" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="85" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="86" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="87" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="88" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="99" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="100" type="Object"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="Stop Sign"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="104" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="105" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="106" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="107" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="108" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="109" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="110" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="111" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="112" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="113" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="114" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="115" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="116" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="117" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="118" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="119" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="120" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="136" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="137" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="138" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="139" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="140" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="141" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="142" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="143" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="144" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="145" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="146" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="147" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="148" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="149" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="150" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="151" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="152" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="168" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="169" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="170" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="171" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="172" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="173" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="174" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="175" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="176" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="177" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="178" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="179" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="180" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="181" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="182" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="183" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="184" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="200" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="201" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="202" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="203" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="204" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="205" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="206" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="207" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="208" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="209" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="210" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="211" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="212" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="213" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="214" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="215" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="216" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="232" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="233" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="234" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="235" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="236" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="237" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="238" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="239" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="240" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="241" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="242" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="243" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="244" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="245" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="246" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="247" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="248" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="264" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="265" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="266" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="267" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="268" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="269" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="270" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="271" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="272" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="273" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="274" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="275" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="276" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="277" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="278" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="279" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
<tile id="280" type="PerspectiveObject"> |
||||||
|
<properties> |
||||||
|
<property name="Name" value="BlueHouse1"/> |
||||||
|
</properties> |
||||||
|
</tile> |
||||||
|
</tileset> |
After Width: | Height: | Size: 13 KiB |
@ -0,0 +1,53 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
#pragma once |
||||||
|
#include <unordered_map> |
||||||
|
#include "XMLTag.h" |
||||||
|
#include "TilesetObject.h" |
||||||
|
#include "pixelGameEngine.h" |
||||||
|
|
||||||
|
struct Tileset{ |
||||||
|
std::string filename; |
||||||
|
std::unordered_map<std::string,TilesetObject>objects; |
||||||
|
XMLTag ImageData; |
||||||
|
int tilewidth=0,tileheight=0; |
||||||
|
int imagewidth=0,imageheight=0; |
||||||
|
int columns=0; |
||||||
|
bool isTerrain=false; |
||||||
|
friend std::ostream& operator << (std::ostream& os, Tileset& rhs); |
||||||
|
}; |
@ -0,0 +1,78 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
|
||||||
|
#include "TilesetObject.h" |
||||||
|
#include "Tileset.h" |
||||||
|
|
||||||
|
void TilesetObject::AddTile(const Tileset&tileset,int tileID){ |
||||||
|
if(bounds.size==vi2d{1,1}){ |
||||||
|
int tileX=tileID%tileset.columns; |
||||||
|
int tileY=tileID/tileset.columns; |
||||||
|
bounds={vi2d{tileX,tileY}*tileset.tilewidth,{tileset.tilewidth,tileset.tileheight}}; |
||||||
|
upperLeftTileId=tileID; |
||||||
|
}else{ |
||||||
|
int tileX=tileID%tileset.columns; |
||||||
|
int tileY=tileID/tileset.columns; |
||||||
|
int textureX=tileX*tileset.tilewidth; |
||||||
|
int textureY=tileY*tileset.tileheight; |
||||||
|
int minX=bounds.pos.x; |
||||||
|
int minY=bounds.pos.y; |
||||||
|
int maxX=bounds.pos.x+bounds.size.x; |
||||||
|
int maxY=bounds.pos.y+bounds.size.y; |
||||||
|
|
||||||
|
if(textureX<minX){ |
||||||
|
minX=textureX; |
||||||
|
} |
||||||
|
if(textureX+tileset.tilewidth>maxX){ |
||||||
|
maxX=textureX+tileset.tilewidth; |
||||||
|
} |
||||||
|
if(textureY<minY){ |
||||||
|
minY=textureY; |
||||||
|
} |
||||||
|
if(textureY+tileset.tileheight>maxY){ |
||||||
|
maxY=textureY+tileset.tileheight; |
||||||
|
} |
||||||
|
bounds={{minX,minY},{maxX-minX,maxY-minY}}; |
||||||
|
|
||||||
|
int minTileX=minX/tileset.tilewidth; |
||||||
|
int minTileY=minY/tileset.tileheight; |
||||||
|
|
||||||
|
int upperLeftTileId=minTileY*tileset.columns+minTileX; |
||||||
|
this->upperLeftTileId=upperLeftTileId; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,55 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
#pragma once |
||||||
|
#include <string> |
||||||
|
#include "Quadrilateral.h" |
||||||
|
|
||||||
|
using namespace olc::utils; |
||||||
|
|
||||||
|
class Tileset; |
||||||
|
|
||||||
|
class TilesetObject{ |
||||||
|
public: |
||||||
|
std::string name; |
||||||
|
int upperLeftTileId; |
||||||
|
bool perspectiveObj=false; |
||||||
|
bool facingLeft=true; |
||||||
|
geom2d::rect<int>bounds; |
||||||
|
std::vector<Quadrilateral>collisionTiles; |
||||||
|
void AddTile(const Tileset&tileset,int tileID); |
||||||
|
}; |
@ -0,0 +1,74 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
#include "XMLTag.h" |
||||||
|
|
||||||
|
const std::string XMLTag::FormatTagData(std::map<std::string,std::string>tiles){ |
||||||
|
std::string displayStr=""; |
||||||
|
for (std::map<std::string,std::string>::iterator it=data.begin();it!=data.end();it++) { |
||||||
|
displayStr+=" "+it->first+": "+it->second+"\n"; |
||||||
|
} |
||||||
|
return displayStr; |
||||||
|
} |
||||||
|
|
||||||
|
std::string XMLTag::str(){ |
||||||
|
return tag+"\n"; |
||||||
|
} |
||||||
|
|
||||||
|
int XMLTag::GetInteger(std::string dataTag){ |
||||||
|
return std::stoi(data[dataTag]); |
||||||
|
} |
||||||
|
|
||||||
|
float XMLTag::GetFloat(std::string dataTag){ |
||||||
|
return std::stof(data[dataTag]); |
||||||
|
} |
||||||
|
|
||||||
|
double XMLTag::GetDouble(std::string dataTag){ |
||||||
|
return std::stod(data[dataTag]); |
||||||
|
} |
||||||
|
|
||||||
|
bool XMLTag::GetBool(std::string dataTag){ |
||||||
|
if (data[dataTag]=="0"||data[dataTag]=="false") { |
||||||
|
return false; |
||||||
|
} else { |
||||||
|
return true; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
std::string XMLTag::GetString(std::string dataTag){ |
||||||
|
return data[dataTag]; |
||||||
|
} |
@ -0,0 +1,53 @@ |
|||||||
|
#pragma region License |
||||||
|
/*
|
||||||
|
License (OLC-3) |
||||||
|
~~~~~~~~~~~~~~~ |
||||||
|
|
||||||
|
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, |
||||||
|
are permitted provided that the following conditions are met: |
||||||
|
|
||||||
|
1. Redistributions or derivations of source code must retain the above copyright |
||||||
|
notice, this list of conditions and the following disclaimer. |
||||||
|
|
||||||
|
2. Redistributions or derivative works in binary form must reproduce the above |
||||||
|
copyright notice. This list of conditions and the following disclaimer must be |
||||||
|
reproduced in the documentation and/or other materials provided with the distribution. |
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors may |
||||||
|
be used to endorse or promote products derived from this software without specific |
||||||
|
prior written permission. |
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||||
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||||
|
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||||
|
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||||
|
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||||
|
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
SUCH DAMAGE. |
||||||
|
|
||||||
|
Portions of this software are copyright © 2024 The FreeType |
||||||
|
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||||
|
All rights reserved. |
||||||
|
*/ |
||||||
|
#pragma endregion |
||||||
|
#pragma once |
||||||
|
#include <string> |
||||||
|
#include <map> |
||||||
|
|
||||||
|
struct XMLTag{ |
||||||
|
std::string tag; |
||||||
|
std::map<std::string,std::string> data; |
||||||
|
const std::string FormatTagData(std::map<std::string,std::string>tiles); |
||||||
|
friend std::ostream& operator << (std::ostream& os, XMLTag& rhs); |
||||||
|
std::string str(); |
||||||
|
int GetInteger(std::string dataTag); |
||||||
|
float GetFloat(std::string dataTag); |
||||||
|
double GetDouble(std::string dataTag); |
||||||
|
bool GetBool(std::string dataTag); |
||||||
|
std::string GetString(std::string dataTag); |
||||||
|
}; |
@ -0,0 +1,50 @@ |
|||||||
|
#include "TSXParser.h" |
||||||
|
#include "olcPGEX_TransformedView.h" |
||||||
|
#include "olcUTIL_Camera2D.h" |
||||||
|
#include "olcPGEX_QuickGUI.h" |
||||||
|
|
||||||
|
using namespace olc; |
||||||
|
using namespace olc::utils; |
||||||
|
|
||||||
|
const std::string TILESET_DIR="./Tiles/"; |
||||||
|
|
||||||
|
class TiledCollisionEditor : public olc::PixelGameEngine |
||||||
|
{ |
||||||
|
std::unordered_map<std::string,Tileset>tilesets; |
||||||
|
std::unordered_map<std::string,Renderable>images; |
||||||
|
|
||||||
|
public: |
||||||
|
TiledCollisionEditor() |
||||||
|
{ |
||||||
|
sAppName = "TiledCollisionEditor"; |
||||||
|
} |
||||||
|
|
||||||
|
public: |
||||||
|
bool OnUserCreate() override |
||||||
|
{ |
||||||
|
std::string tilesetFilename=TILESET_DIR+"Basic Tileset.tsx"; |
||||||
|
Tileset&tileset=tilesets[tilesetFilename]=TSXParser{tilesetFilename}.GetData(); |
||||||
|
|
||||||
|
Renderable&tilesetImg=images[tilesetFilename]; |
||||||
|
tilesetImg.Load(TILESET_DIR+tileset.filename); |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
bool OnUserUpdate(float fElapsedTime) override |
||||||
|
{ |
||||||
|
Clear(VERY_DARK_BLUE); |
||||||
|
for(auto&[tilesetName,tileset]:tilesets){ |
||||||
|
DrawDecal({0,0},images[tilesetName].Decal()); |
||||||
|
} |
||||||
|
return true; |
||||||
|
} |
||||||
|
}; |
||||||
|
|
||||||
|
int main() |
||||||
|
{
|
||||||
|
TiledCollisionEditor demo; |
||||||
|
if (demo.Construct(640, 180, 4, 4)) |
||||||
|
demo.Start(); |
||||||
|
|
||||||
|
return 0; |
||||||
|
} |
File diff suppressed because it is too large
Load Diff
@ -1,56 +0,0 @@ |
|||||||
#include "olcUTIL_Geometry2D.h" |
|
||||||
#include "pixelGameEngine.h" |
|
||||||
#include "olcPGEX_TransformedView.h" |
|
||||||
#include "olcUTIL_Camera2D.h" |
|
||||||
|
|
||||||
using namespace olc; |
|
||||||
|
|
||||||
#define WIDTH 640 |
|
||||||
#define HEIGHT 480 |
|
||||||
|
|
||||||
class TiledCollisionEditor : public olc::PixelGameEngine |
|
||||||
{ |
|
||||||
|
|
||||||
|
|
||||||
public: |
|
||||||
TiledCollisionEditor() |
|
||||||
{ |
|
||||||
sAppName = "TiledCollisionEditor"; |
|
||||||
} |
|
||||||
|
|
||||||
public: |
|
||||||
bool OnUserCreate() override |
|
||||||
{ |
|
||||||
return true; |
|
||||||
} |
|
||||||
|
|
||||||
bool OnUserUpdate(float fElapsedTime) override |
|
||||||
{ |
|
||||||
return true; |
|
||||||
} |
|
||||||
|
|
||||||
bool OnUserDestroy()override{ |
|
||||||
return true; |
|
||||||
} |
|
||||||
}; |
|
||||||
|
|
||||||
enum Direction{ |
|
||||||
RIGHT, |
|
||||||
DOWN, |
|
||||||
LEFT, |
|
||||||
UP |
|
||||||
}; |
|
||||||
|
|
||||||
struct Data{ |
|
||||||
int x,y; |
|
||||||
}; |
|
||||||
|
|
||||||
|
|
||||||
int main() |
|
||||||
{
|
|
||||||
TiledCollisionEditor demo; |
|
||||||
if (demo.Construct(640, 480, 4, 4)) |
|
||||||
demo.Start(); |
|
||||||
|
|
||||||
return 0; |
|
||||||
} |
|
Loading…
Reference in new issue