6 Commits

Author SHA1 Message Date
359af6326b test5 2022-10-04 12:58:15 -04:00
Vulpovile
cb6be1e183 Fixed structure 2022-10-04 07:12:25 -07:00
Vulpovile
6f9e9da771 Fix merge conflicts 2022-10-04 07:08:56 -07:00
88176d317c Placeholder 2022-10-03 15:28:11 -04:00
9dc3577bc8 splashhtml 2022-10-02 00:20:31 -04:00
3bdef8e3ab Add a broken SplashHTML 2022-10-01 14:23:57 -04:00
43 changed files with 937 additions and 1028025 deletions

View File

@@ -1,25 +0,0 @@
name: Sync Back to Develop
on:
push:
branches:
- master
jobs:
sync-branches:
runs-on: ubuntu-latest
name: Syncing branches
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Node
uses: actions/setup-node@v1
with:
node-version: 12
- name: Opening pull request
id: pull
uses: tretuna/sync-branches@1.2.0
with:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
FROM_BRANCH: 'master'
TO_BRANCH: 'develop'

7
.gitignore vendored
View File

@@ -40,9 +40,6 @@
*.ilk *.ilk
*.dep *.dep
# ResEditor files
*.aps
/Debug /Debug
/Release /Release
stdout.txt stdout.txt
@@ -53,6 +50,10 @@ G3DTest.suo
G3DTest.suo G3DTest.suo
stderr.txt stderr.txt
desktop.ini desktop.ini
UpgradeLog.XML
/_UpgradeReport_Files
/.vs
*.7.10.old
*.db *.db
#Redist #Redist

20
Backup/Blocks3D.sln Normal file
View File

@@ -0,0 +1,20 @@

Microsoft Visual Studio Solution File, Format Version 9.00
# Visual C++ Express 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks3D", "Blocks3D.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.ActiveCfg = Debug|Win32
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.Build.0 = Debug|Win32
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.ActiveCfg = Release|Win32
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -1,5 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="0.0.106.2"
processorArchitecture="*"
name="Blocks3D.Blocks3D.Blocks3D"
type="win32"
/>
<dependency> <dependency>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/>

View File

@@ -1,20 +1,20 @@
 
Microsoft Visual Studio Solution File, Format Version 9.00 Microsoft Visual Studio Solution File, Format Version 9.00
# Visual C++ Express 2005 # Visual C++ Express 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks3D", "Blocks3D.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks3D", "Blocks3D.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32 Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32 Release|Win32 = Release|Win32
EndGlobalSection EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.ActiveCfg = Debug|Win32 {6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.ActiveCfg = Debug|Win32
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.Build.0 = Debug|Win32 {6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.Build.0 = Debug|Win32
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.ActiveCfg = Release|Win32 {6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.ActiveCfg = Release|Win32
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.Build.0 = Release|Win32 {6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
EndGlobalSection EndGlobalSection
EndGlobal EndGlobal

View File

@@ -49,11 +49,7 @@
<Tool <Tool
Name="VCCLCompilerTool" Name="VCCLCompilerTool"
Optimization="2" Optimization="2"
InlineFunctionExpansion="2" InlineFunctionExpansion="1"
EnableIntrinsicFunctions="true"
FavorSizeOrSpeed="1"
OmitFramePointers="true"
WholeProgramOptimization="true"
AdditionalIncludeDirectories="&quot;.\src\include&quot;" AdditionalIncludeDirectories="&quot;.\src\include&quot;"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
StringPooling="true" StringPooling="true"
@@ -79,17 +75,12 @@
/> />
<Tool <Tool
Name="VCLinkerTool" Name="VCLinkerTool"
AdditionalDependencies="Advapi32.lib Comctl32.lib Comdlg32.lib Shell32.lib ode.lib Ole32.lib" AdditionalDependencies="Advapi32.lib Comctl32.lib Comdlg32.lib Shell32.lib ode.lib OPCODE.lib Ole32.lib"
OutputFile="./Blocks3D.exe" OutputFile="./Blocks3D.exe"
LinkIncremental="1" LinkIncremental="1"
SuppressStartupBanner="true" SuppressStartupBanner="true"
ProgramDatabaseFile=".\Release/Blocks3D.pdb" ProgramDatabaseFile=".\Release/Blocks3D.pdb"
SubSystem="2" SubSystem="2"
StackReserveSize="16777216"
OptimizeReferences="2"
EnableCOMDATFolding="2"
OptimizeForWindows98="2"
LinkTimeCodeGeneration="1"
TargetMachine="1" TargetMachine="1"
/> />
<Tool <Tool
@@ -181,14 +172,13 @@
/> />
<Tool <Tool
Name="VCLinkerTool" Name="VCLinkerTool"
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib Urlmon.lib ole32.lib oleaut32.lib uuid.lib oded.lib" AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib Urlmon.lib ole32.lib oleaut32.lib uuid.lib ode.lib OPCODE.lib"
OutputFile="./Blocks3D-Debug.exe" OutputFile="./Blocks3D-Debug.exe"
LinkIncremental="2" LinkIncremental="2"
SuppressStartupBanner="true" SuppressStartupBanner="true"
GenerateDebugInformation="true" GenerateDebugInformation="true"
ProgramDatabaseFile=".\Debug/Blocks3D.pdb" ProgramDatabaseFile=".\Debug/Blocks3D.pdb"
SubSystem="1" SubSystem="1"
StackReserveSize="16777216"
TargetMachine="1" TargetMachine="1"
/> />
<Tool <Tool
@@ -302,6 +292,10 @@
RelativePath=".\src\source\Renderer.cpp" RelativePath=".\src\source\Renderer.cpp"
> >
</File> </File>
<File
RelativePath=".\src\source\SplashHTML.cpp"
>
</File>
<File <File
RelativePath=".\src\source\StringFunctions.cpp" RelativePath=".\src\source\StringFunctions.cpp"
> >
@@ -735,6 +729,10 @@
RelativePath=".\src\include\resource.h" RelativePath=".\src\include\resource.h"
> >
</File> </File>
<File
RelativePath=".\src\include\SplashHTML.h"
>
</File>
<File <File
RelativePath=".\src\include\StringFunctions.h" RelativePath=".\src\include\StringFunctions.h"
> >
@@ -743,14 +741,6 @@
RelativePath=".\src\include\TextureHandler.h" RelativePath=".\src\include\TextureHandler.h"
> >
</File> </File>
<File
RelativePath=".\src\include\ToolEnum.h"
>
</File>
<File
RelativePath=".\src\include\VS2005CompatShim.h"
>
</File>
<File <File
RelativePath=".\src\include\win32Defines.h" RelativePath=".\src\include\win32Defines.h"
> >

340
Blocks3D.vcxproj Normal file
View File

@@ -0,0 +1,340 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="Current" 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>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<ProjectGuid>{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}</ProjectGuid>
<RootNamespace>Blocks3D</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v143</PlatformToolset>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<CLRSupport>false</CLRSupport>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v143</PlatformToolset>
<UseOfMfc>false</UseOfMfc>
<UseOfAtl>false</UseOfAtl>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>17.0.32505.173</_ProjectFileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>.\Release\</OutDir>
<IntDir>.\Release\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>.\Debug\</OutDir>
<IntDir>.\Debug\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
<SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>.\Release/Blocks3D.tlb</TypeLibraryName>
<HeaderFileName />
</Midl>
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>.\src\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\Release/Blocks3D.pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\Release/</AssemblerListingLocation>
<ObjectFileName>.\Release/</ObjectFileName>
<ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<Culture>0x1009</Culture>
</ResourceCompile>
<Link>
<AdditionalDependencies>Advapi32.lib;Comctl32.lib;Comdlg32.lib;Shell32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>./Blocks3D.exe</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<ProgramDatabaseFile>.\Release/Blocks3D.pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
<Bscmake>
<SuppressStartupBanner>true</SuppressStartupBanner>
<OutputFile>.\Release/Blocks3D.bsc</OutputFile>
</Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
<SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>.\Debug/Blocks3D.tlb</TypeLibraryName>
<HeaderFileName />
</Midl>
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\src\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>false</MinimalRebuild>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<FunctionLevelLinking>false</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\Debug/Blocks3D.pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\Debug/</AssemblerListingLocation>
<ObjectFileName>.\Debug/</ObjectFileName>
<ProgramDataBaseFileName>.\Debug/</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<Culture>0x1009</Culture>
</ResourceCompile>
<Link>
<AdditionalDependencies>Advapi32.lib;UxTheme.lib;Comctl32.lib;Comdlg32.lib;Shell32.lib;Urlmon.lib;ole32.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>./Blocks3D-Debug.exe</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>.\Debug/Blocks3D.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
<Bscmake>
<SuppressStartupBanner>true</SuppressStartupBanner>
<OutputFile>.\Debug/Blocks3D.bsc</OutputFile>
</Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<Reference Include="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
</Reference>
<Reference Include="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
</Reference>
<Reference Include="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
</Reference>
<Reference Include="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
</Reference>
<Reference Include="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
</Reference>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\source\Application.cpp" />
<ClCompile Include="src\source\AudioPlayer.cpp" />
<ClCompile Include="src\source\ax.cpp" />
<ClCompile Include="src\source\BrowserCallHandler.cpp" />
<ClCompile Include="src\source\CameraController.cpp" />
<ClCompile Include="src\source\DataModelV2\BaseButtonInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\BaseGuiInstance.cpp" />
<ClCompile Include="src\source\DataModelV2\DataModelInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\GroupInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\GuiRootInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\ImageButtonInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\Instance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\LevelInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\PartInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\PVInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\TextButtonInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\ToggleImageButtonInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\WorkspaceInstance.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\source\ErrorFunctions.cpp" />
<ClCompile Include="src\source\Globals.cpp" />
<ClCompile Include="src\source\IEBrowser.cpp" />
<ClCompile Include="src\source\IEDispatcher.cpp" />
<ClCompile Include="src\source\Listener\ButtonListener.cpp" />
<ClCompile Include="src\source\Listener\CameraButtonListener.cpp" />
<ClCompile Include="src\source\Listener\DeleteListener.cpp" />
<ClCompile Include="src\source\Listener\GUDButtonListener.cpp" />
<ClCompile Include="src\source\Listener\MenuButtonListener.cpp" />
<ClCompile Include="src\source\Listener\ModeSelectionListener.cpp" />
<ClCompile Include="src\source\Listener\RotateButtonListener.cpp" />
<ClCompile Include="src\source\Listener\ToolbarListener.cpp" />
<ClCompile Include="src\source\main.cpp" />
<ClCompile Include="src\source\Mouse.cpp" />
<ClCompile Include="src\source\Properties\BoolProperty.cpp" />
<ClCompile Include="src\source\Properties\Property.cpp" />
<ClCompile Include="src\source\propertyGrid.cpp" />
<ClCompile Include="src\source\PropertyWindow.cpp" />
<ClCompile Include="src\source\Renderer.cpp" />
<ClCompile Include="src\source\StringFunctions.cpp" />
<ClCompile Include="src\source\TextureHandler.cpp" />
<ClCompile Include="src\source\Tool\ArrowTool.cpp" />
<ClCompile Include="src\source\Tool\SurfaceTool.cpp" />
<ClCompile Include="src\source\Tool\Tool.cpp" />
<ClCompile Include="src\source\WindowFunctions.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="resource.h" />
<ClInclude Include="src\include\Application.h" />
<ClInclude Include="src\include\AudioPlayer.h" />
<ClInclude Include="src\include\ax.h" />
<ClInclude Include="src\include\BrowserCallHandler.h" />
<ClInclude Include="src\include\CameraController.h" />
<ClInclude Include="src\include\DataModelV2\BaseButtonInstance.h" />
<ClInclude Include="src\include\DataModelV2\BaseGuiInstance.h" />
<ClInclude Include="src\include\DataModelV2\DataModelInstance.h" />
<ClInclude Include="src\include\DataModelV2\GroupInstance.h" />
<ClInclude Include="src\include\DataModelV2\GuiRootInstance.h" />
<ClInclude Include="src\include\DataModelV2\ImageButtonInstance.h" />
<ClInclude Include="src\include\DataModelV2\Instance.h" />
<ClInclude Include="src\include\DataModelV2\LevelInstance.h" />
<ClInclude Include="src\include\DataModelV2\PartInstance.h" />
<ClInclude Include="src\include\DataModelV2\PVInstance.h" />
<ClInclude Include="src\include\DataModelV2\TextButtonInstance.h" />
<ClInclude Include="src\include\DataModelV2\ToggleImageButtonInstance.h" />
<ClInclude Include="src\include\DataModelV2\WorkspaceInstance.h" />
<ClInclude Include="src\include\DataModel\WorkspaceInstance.h" />
<ClInclude Include="src\include\Enum.h" />
<ClInclude Include="src\include\ErrorFunctions.h" />
<ClInclude Include="src\include\Faces.h" />
<ClInclude Include="src\include\Globals.h" />
<ClInclude Include="src\include\IEBrowser.h" />
<ClInclude Include="src\include\IEDispatcher.h" />
<ClInclude Include="src\include\Listener\ButtonListener.h" />
<ClInclude Include="src\include\Listener\CameraButtonListener.h" />
<ClInclude Include="src\include\Listener\DeleteListener.h" />
<ClInclude Include="src\include\Listener\GUDButtonListener.h" />
<ClInclude Include="src\include\Listener\MenuButtonListener.h" />
<ClInclude Include="src\include\Listener\ModeSelectionListener.h" />
<ClInclude Include="src\include\Listener\RotateButtonListener.h" />
<ClInclude Include="src\include\Listener\ToolbarListener.h" />
<ClInclude Include="src\include\Mouse.h" />
<ClInclude Include="src\include\Properties\BoolProperty.h" />
<ClInclude Include="src\include\Properties\Property.h" />
<ClInclude Include="src\include\propertyGrid.h" />
<ClInclude Include="src\include\PropertyWindow.h" />
<ClInclude Include="src\include\rapidxml\rapidxml.hpp" />
<ClInclude Include="src\include\rapidxml\rapidxml_iterators.hpp" />
<ClInclude Include="src\include\rapidxml\rapidxml_print.hpp" />
<ClInclude Include="src\include\rapidxml\rapidxml_utils.hpp" />
<ClInclude Include="src\include\Renderer.h" />
<ClInclude Include="src\include\StringFunctions.h" />
<ClInclude Include="src\include\TextureHandler.h" />
<ClInclude Include="src\include\Tool\ArrowTool.h" />
<ClInclude Include="src\include\Tool\SurfaceTool.h" />
<ClInclude Include="src\include\Tool\Tool.h" />
<ClInclude Include="src\include\win32Defines.h" />
<ClInclude Include="src\include\WindowFunctions.h" />
<ClInclude Include="src\include\winver.h" />
</ItemGroup>
<ItemGroup>
<None Include="B3dIcon.ico" />
<None Include="FatB3dIcon.ico" />
<None Include="Parts.bmp" />
<None Include="roblox_RN1_icon.ico" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="Dialogs.rc" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<ProjectExtensions>
<VisualStudio>
<UserProperties RESOURCE_FILE="Dialogs.rc" />
</VisualStudio>
</ProjectExtensions>
</Project>

358
Blocks3D.vcxproj.filters Normal file
View File

@@ -0,0 +1,358 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{9571c986-a719-4aa9-8f06-edd22511bbbf}</UniqueIdentifier>
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
</Filter>
<Filter Include="Source Files\Tool">
<UniqueIdentifier>{10225c23-5e14-45ed-aa65-5e2952d83749}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\Listener">
<UniqueIdentifier>{9a362f2a-3ea4-4130-80e1-c7dae14a8862}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\DataModelV2">
<UniqueIdentifier>{018ed0d2-9b98-424f-9af8-172600aa12e3}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\DataModelV2\Gui">
<UniqueIdentifier>{870b4a49-cf43-4f47-8321-f48d7b01816b}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\Properties">
<UniqueIdentifier>{7d5f8016-5447-4c00-b9cd-d2c5bb2e59b8}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{f959d8b8-bb6a-4c70-ad2c-f1c66758c461}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl</Extensions>
</Filter>
<Filter Include="Header Files\RapidXML">
<UniqueIdentifier>{6db93330-5b80-4675-8d44-4db372d9d5b5}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\Listener">
<UniqueIdentifier>{8bb34ca3-25fe-465c-a77e-8057005450b0}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\Tool">
<UniqueIdentifier>{b00aefef-dafe-4dc3-8aec-d5a4d56dd2e0}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\DataModelV2">
<UniqueIdentifier>{c13ee511-5b6b-4b79-8402-31323e149b75}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\DataModelV2\Gui">
<UniqueIdentifier>{2414eb84-1360-4601-af93-51eb6639ba14}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\Properties">
<UniqueIdentifier>{1ff12666-0b54-4e78-8a68-43853c4f7f12}</UniqueIdentifier>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{f27a93e2-d403-4b4e-ac57-4081d78febbc}</UniqueIdentifier>
<Extensions>ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\source\Application.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\AudioPlayer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\ax.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\BrowserCallHandler.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\CameraController.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\ErrorFunctions.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\Globals.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\IEBrowser.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\IEDispatcher.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\Mouse.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\propertyGrid.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\PropertyWindow.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\Renderer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\StringFunctions.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\TextureHandler.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\WindowFunctions.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\source\Tool\ArrowTool.cpp">
<Filter>Source Files\Tool</Filter>
</ClCompile>
<ClCompile Include="src\source\Tool\SurfaceTool.cpp">
<Filter>Source Files\Tool</Filter>
</ClCompile>
<ClCompile Include="src\source\Tool\Tool.cpp">
<Filter>Source Files\Tool</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\ButtonListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\CameraButtonListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\DeleteListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\GUDButtonListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\MenuButtonListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\ModeSelectionListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\RotateButtonListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\Listener\ToolbarListener.cpp">
<Filter>Source Files\Listener</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\DataModelInstance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\GroupInstance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\Instance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\LevelInstance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\PartInstance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\PVInstance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\WorkspaceInstance.cpp">
<Filter>Source Files\DataModelV2</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\BaseButtonInstance.cpp">
<Filter>Source Files\DataModelV2\Gui</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\BaseGuiInstance.cpp">
<Filter>Source Files\DataModelV2\Gui</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\GuiRootInstance.cpp">
<Filter>Source Files\DataModelV2\Gui</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\ImageButtonInstance.cpp">
<Filter>Source Files\DataModelV2\Gui</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\TextButtonInstance.cpp">
<Filter>Source Files\DataModelV2\Gui</Filter>
</ClCompile>
<ClCompile Include="src\source\DataModelV2\ToggleImageButtonInstance.cpp">
<Filter>Source Files\DataModelV2\Gui</Filter>
</ClCompile>
<ClCompile Include="src\source\Properties\BoolProperty.cpp">
<Filter>Source Files\Properties</Filter>
</ClCompile>
<ClCompile Include="src\source\Properties\Property.cpp">
<Filter>Source Files\Properties</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\include\Application.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\AudioPlayer.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\ax.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\BrowserCallHandler.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\CameraController.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\Enum.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\ErrorFunctions.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\Faces.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\Globals.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\IEBrowser.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\IEDispatcher.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\Mouse.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\propertyGrid.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\PropertyWindow.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\Renderer.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="resource.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\StringFunctions.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\TextureHandler.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\win32Defines.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\WindowFunctions.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\winver.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\include\rapidxml\rapidxml.hpp">
<Filter>Header Files\RapidXML</Filter>
</ClInclude>
<ClInclude Include="src\include\rapidxml\rapidxml_iterators.hpp">
<Filter>Header Files\RapidXML</Filter>
</ClInclude>
<ClInclude Include="src\include\rapidxml\rapidxml_print.hpp">
<Filter>Header Files\RapidXML</Filter>
</ClInclude>
<ClInclude Include="src\include\rapidxml\rapidxml_utils.hpp">
<Filter>Header Files\RapidXML</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\ButtonListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\CameraButtonListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\DeleteListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\GUDButtonListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\MenuButtonListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\ModeSelectionListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\RotateButtonListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Listener\ToolbarListener.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModel\WorkspaceInstance.h">
<Filter>Header Files\Listener</Filter>
</ClInclude>
<ClInclude Include="src\include\Tool\ArrowTool.h">
<Filter>Header Files\Tool</Filter>
</ClInclude>
<ClInclude Include="src\include\Tool\SurfaceTool.h">
<Filter>Header Files\Tool</Filter>
</ClInclude>
<ClInclude Include="src\include\Tool\Tool.h">
<Filter>Header Files\Tool</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\DataModelInstance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\GroupInstance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\Instance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\LevelInstance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\PartInstance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\PVInstance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\WorkspaceInstance.h">
<Filter>Header Files\DataModelV2</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\BaseButtonInstance.h">
<Filter>Header Files\DataModelV2\Gui</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\BaseGuiInstance.h">
<Filter>Header Files\DataModelV2\Gui</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\GuiRootInstance.h">
<Filter>Header Files\DataModelV2\Gui</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\ImageButtonInstance.h">
<Filter>Header Files\DataModelV2\Gui</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\TextButtonInstance.h">
<Filter>Header Files\DataModelV2\Gui</Filter>
</ClInclude>
<ClInclude Include="src\include\DataModelV2\ToggleImageButtonInstance.h">
<Filter>Header Files\DataModelV2\Gui</Filter>
</ClInclude>
<ClInclude Include="src\include\Properties\BoolProperty.h">
<Filter>Header Files\Properties</Filter>
</ClInclude>
<ClInclude Include="src\include\Properties\Property.h">
<Filter>Header Files\Properties</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="B3dIcon.ico">
<Filter>Resource Files</Filter>
</None>
<None Include="FatB3dIcon.ico">
<Filter>Resource Files</Filter>
</None>
<None Include="Parts.bmp">
<Filter>Resource Files</Filter>
</None>
<None Include="roblox_RN1_icon.ico">
<Filter>Resource Files</Filter>
</None>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="Dialogs.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
</Project>

BIN
Dialogs.aps Normal file

Binary file not shown.

View File

@@ -6,7 +6,17 @@
#include <commctrl.h> #include <commctrl.h>
#include <richedit.h> #include <richedit.h>
#include "src/include/resource.h" #include "src/include/resource.h"
#include "src/include/versioning.h"
#define APP_GENER 0
#define APP_MAJOR 0
#define APP_MINOR 106
#define APP_PATCH 2
#define APP_VER_STRING APP_GENER.APP_MAJOR.APP_MINOR.APP_PATCH
#define VER_PREFIX( N ) v##N
#define HSTR( N ) #N
#define STR( N ) HSTR( N )
#define VER_STR( N ) STR( VER_PREFIX( N ) )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,588 +0,0 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Workspace" referent="RBX0">
<Properties>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<Ref name="CurrentCamera">RBX1</Ref>
<double name="DistributedGameTime">0</double>
<CoordinateFrame name="ModelInPrimary">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">Workspace</string>
<Ref name="PrimaryPart">null</Ref>
<bool name="archivable">true</bool>
</Properties>
<Item class="Camera" referent="RBX1">
<Properties>
<Ref name="CameraSubject">null</Ref>
<token name="CameraType">0</token>
<CoordinateFrame name="CoordinateFrame">
<X>-2.9603548</X>
<Y>115.389259</Y>
<Z>44.9416084</Z>
<R00>0.112786211</R00>
<R01>0.522245169</R01>
<R02>-0.845304191</R02>
<R10>-2.22539209e-009</R10>
<R11>0.850732446</R11>
<R12>0.525598884</R12>
<R20>0.993619263</R20>
<R21>-0.0592803061</R21>
<R22>0.0959508941</R22>
</CoordinateFrame>
<CoordinateFrame name="Focus">
<X>13.9457293</X>
<Y>104.877281</Y>
<Z>43.0225906</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">Camera</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Part" referent="RBX2">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">21</int>
<CoordinateFrame name="CFrame">
<X>87.0174942</X>
<Y>48.0466728</Y>
<Z>25.0001202</Z>
<R00>-0.969314575</R00>
<R01>0.245822206</R01>
<R02>4.6762093e-006</R02>
<R10>0.245822206</R10>
<R11>0.969314933</R11>
<R12>6.9744442e-007</R12>
<R20>-4.35209677e-006</R20>
<R21>1.87532066e-006</R21>
<R22>-0.999999642</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">2</token>
<Vector3 name="size">
<X>6</X>
<Y>6</Y>
<Z>6</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX3">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>108.911415</X>
<Y>38.7803154</Y>
<Z>27.5002155</Z>
<R00>-0.969314575</R00>
<R01>0.245822206</R01>
<R02>4.6762093e-006</R02>
<R10>0.245822206</R10>
<R11>0.969314933</R11>
<R12>6.9744442e-007</R12>
<R20>-4.35209677e-006</R20>
<R21>1.87532066e-006</R21>
<R22>-0.999999642</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">1</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>53</X>
<Y>1.20000005</Y>
<Z>1</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX4">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>141.499893</X>
<Y>38.1177788</Y>
<Z>27.0499611</Z>
<R00>1</R00>
<R01>-1.07914104e-006</R01>
<R02>-4.49890285e-006</R02>
<R10>-5.98966139e-008</R10>
<R11>0.969315231</R11>
<R12>-0.245820925</R12>
<R20>4.6261307e-006</R20>
<R21>0.245820925</R21>
<R22>0.969315231</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">1</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>1</X>
<Y>16.8000011</Y>
<Z>12</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX5">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>108.911438</X>
<Y>38.7803192</Y>
<Z>22.5002174</Z>
<R00>-0.969314575</R00>
<R01>0.245822206</R01>
<R02>4.6762093e-006</R02>
<R10>0.245822206</R10>
<R11>0.969314933</R11>
<R12>6.9744442e-007</R12>
<R20>-4.35209677e-006</R20>
<R21>1.87532066e-006</R21>
<R22>-0.999999642</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">1</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>53</X>
<Y>1.20000005</Y>
<Z>1</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX6">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>140.499786</X>
<Y>24.7802944</Y>
<Z>47.911438</Z>
<R00>4.35209677e-006</R00>
<R01>-1.87532066e-006</R01>
<R02>0.999999642</R02>
<R10>0.245822206</R10>
<R11>0.969314933</R11>
<R12>6.9744442e-007</R12>
<R20>-0.969314575</R20>
<R21>0.245822206</R21>
<R22>4.6762093e-006</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">1</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>53</X>
<Y>1.20000005</Y>
<Z>1</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX7">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>135.499786</X>
<Y>24.7802944</Y>
<Z>47.9114227</Z>
<R00>4.35515585e-006</R00>
<R01>-1.85873387e-006</R01>
<R02>0.999999881</R02>
<R10>0.245822236</R10>
<R11>0.969314933</R11>
<R12>7.14274279e-007</R12>
<R20>-0.969314814</R20>
<R21>0.245822236</R21>
<R22>4.67732343e-006</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">1</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>53</X>
<Y>1.20000005</Y>
<Z>1</Z>
</Vector3>
</Properties>
</Item>
</Item>
<Item class="RunService" referent="RBX8">
<Properties>
<string name="Name">Run Service</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX9</External>
<External>RBX10</External>
<Item class="Players" referent="RBX11">
<Properties>
<int name="MaxPlayers">12</int>
<string name="Name">Players</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="StarterPack" referent="RBX12">
<Properties>
<string name="Name">StarterPack</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="SoundService" referent="RBX13">
<Properties>
<token name="AmbientReverb">0</token>
<float name="DistanceFactor">10</float>
<float name="DopplerScale">1</float>
<string name="Name">Soundscape</string>
<float name="RolloffScale">1</float>
<bool name="archivable">true</bool>
</Properties>
<External>RBX14</External>
<External>RBX15</External>
<External>RBX16</External>
<External>RBX17</External>
<External>RBX18</External>
<External>RBX19</External>
<External>RBX20</External>
<External>RBX21</External>
<External>RBX22</External>
<External>RBX23</External>
<External>RBX24</External>
<External>RBX25</External>
<External>RBX26</External>
<External>RBX27</External>
</Item>
<Item class="ContentProvider" referent="RBX28">
<Properties>
<string name="Name">Instance</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="PhysicsService" referent="RBX29">
<Properties>
<string name="Name">PhysicsService</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX30</External>
<Item class="Selection" referent="RBX31">
<Properties>
<string name="Name">Selection</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX32</External>
<Item class="Lighting" referent="RBX33">
<Properties>
<Color3 name="Ambient">4286940549</Color3>
<float name="Brightness">1</float>
<Color3 name="ColorShift_Bottom">4278190080</Color3>
<Color3 name="ColorShift_Top">4278190080</Color3>
<float name="GeographicLatitude">41.7332993</float>
<string name="Name">Lighting</string>
<Color3 name="ShadowColor">4290295997</Color3>
<string name="TimeOfDay">14:00:00</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ControllerService" referent="RBX34">
<Properties>
<string name="Name">Instance</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ChangeHistoryService" referent="RBX35">
<Properties>
<string name="Name">ChangeHistoryService</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX36</External>
</roblox>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,578 +0,0 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="RunService">
<Properties>
<string name="Name">Run Service</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Selection">
<Properties>
<string name="Name">Selection</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Workspace">
<Properties>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<Ref name="CurrentCamera">RBX0</Ref>
<CoordinateFrame name="ModelInPrimary">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">Workspace</string>
<Ref name="PrimaryPart">RBX1</Ref>
<bool name="archivable">true</bool>
</Properties>
<Item class="Camera" referent="RBX0">
<Properties>
<Ref name="CameraSubject">null</Ref>
<token name="CameraType">0</token>
<CoordinateFrame name="CoordinateFrame">
<X>202.42688</X>
<Y>55.4607582</Y>
<Z>3.2956109</Z>
<R00>0.0106770508</R00>
<R01>0.00328579429</R01>
<R02>0.999937654</R02>
<R10>4.65661287e-010</R10>
<R11>0.999994576</R11>
<R12>-0.00328598148</R12>
<R20>-0.999943018</R20>
<R21>3.50852497e-005</R21>
<R22>0.010676994</R22>
</CoordinateFrame>
<CoordinateFrame name="Focus">
<X>182.428116</X>
<Y>55.5264778</Y>
<Z>3.08207107</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">Camera</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Part" referent="RBX1">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">37</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>2.79999995</Y>
<Z>-4</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<bool name="CastsShadows">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="Cullable">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Part</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>64</X>
<Y>1</Y>
<Z>248</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>78.3000031</Y>
<Z>-96</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<bool name="CastsShadows">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="Cullable">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Part</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>2</Y>
<Z>2</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>79.3000031</Y>
<Z>-62</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<bool name="CastsShadows">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="Cullable">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Part</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>4</X>
<Y>4</Y>
<Z>4</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>81.3000031</Y>
<Z>-25</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<bool name="CastsShadows">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="Cullable">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Part</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>8</X>
<Y>8</Y>
<Z>8</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>85.3000031</Y>
<Z>18</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<bool name="CastsShadows">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="Cullable">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Part</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>16</X>
<Y>16</Y>
<Z>16</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">0</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">23</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>93.3000031</Y>
<Z>73</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<bool name="CastsShadows">false</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="Cullable">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Part</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">0</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>32</X>
<Y>32</Y>
<Z>32</Z>
</Vector3>
</Properties>
</Item>
</Item>
<External>RBX2</External>
<External>RBX3</External>
<Item class="Players">
<Properties>
<string name="Name">Players</string>
<bool name="archivable">true</bool>
<int name="maxPlayers">10</int>
</Properties>
</Item>
<Item class="StarterPack">
<Properties>
<string name="Name">StarterPack</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="SoundService">
<Properties>
<string name="Name">SoundService</string>
<bool name="archivable">true</bool>
<float name="distancefactor">10</float>
<float name="dopplerscale">1</float>
<float name="rolloffscale">1</float>
</Properties>
<External>RBX4</External>
<External>RBX5</External>
<External>RBX6</External>
<External>RBX7</External>
<External>RBX8</External>
<External>RBX9</External>
<External>RBX10</External>
<External>RBX11</External>
<External>RBX12</External>
<External>RBX13</External>
<External>RBX14</External>
<External>RBX15</External>
<External>RBX16</External>
<External>RBX17</External>
</Item>
<Item class="Lighting">
<Properties>
<Color3 name="BottomAmbientV9">4286220152</Color3>
<Color3 name="ClearColor">4278190080</Color3>
<string name="Name">Lighting</string>
<Color3 name="SpotLightV9">4290822336</Color3>
<string name="TimeOfDay">14:00:00</string>
<Color3 name="TopAmbientV9">4292006362</Color3>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ControllerService">
<Properties>
<string name="Name">Instance</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX18</External>
<External>RBX19</External>
<External>RBX20</External>
</roblox>

File diff suppressed because it is too large Load Diff

View File

@@ -1,660 +0,0 @@
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
<External>null</External>
<External>nil</External>
<Item class="Workspace" referent="RBX0">
<Properties>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<Ref name="CurrentCamera">RBX1</Ref>
<double name="DistributedGameTime">0</double>
<CoordinateFrame name="ModelInPrimary">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">Workspace</string>
<Ref name="PrimaryPart">null</Ref>
<bool name="archivable">true</bool>
</Properties>
<Item class="Camera" referent="RBX1">
<Properties>
<Ref name="CameraSubject">null</Ref>
<token name="CameraType">0</token>
<CoordinateFrame name="CoordinateFrame">
<X>-62.3436203</X>
<Y>290.964996</Y>
<Z>130.047195</Z>
<R00>0.900759101</R00>
<R01>0.385544956</R01>
<R02>-0.199970409</R02>
<R10>3.07713033e-009</R10>
<R11>0.460422784</R11>
<R12>0.887699783</R12>
<R20>0.434319079</R20>
<R21>-0.799603641</R21>
<R22>0.414730012</R22>
</CoordinateFrame>
<CoordinateFrame name="Focus">
<X>-58.3442116</X>
<Y>273.210999</Y>
<Z>121.752594</Z>
<R00>1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>1</R22>
</CoordinateFrame>
<string name="Name">Camera</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="Part" referent="RBX2">
<Properties>
<bool name="Anchored">true</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">37</int>
<CoordinateFrame name="CFrame">
<X>0</X>
<Y>0.600000024</Y>
<Z>0</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>-0</R02>
<R10>-0</R10>
<R11>1</R11>
<R12>-0</R12>
<R20>-0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">1</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">true</bool>
<string name="Name">Baseplate</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>512</X>
<Y>1.20000005</Y>
<Z>512</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX3">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">28</int>
<CoordinateFrame name="CFrame">
<X>-2</X>
<Y>5.69999981</Y>
<Z>1</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>9</Y>
<Z>2</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX4">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">28</int>
<CoordinateFrame name="CFrame">
<X>6</X>
<Y>5.69999981</Y>
<Z>1</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>9</Y>
<Z>2</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX5">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">28</int>
<CoordinateFrame name="CFrame">
<X>6</X>
<Y>5.69999981</Y>
<Z>-7</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>9</Y>
<Z>2</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX6">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">28</int>
<CoordinateFrame name="CFrame">
<X>-2</X>
<Y>5.69999981</Y>
<Z>-7</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>2</X>
<Y>9</Y>
<Z>2</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX7">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">28</int>
<CoordinateFrame name="CFrame">
<X>2</X>
<Y>11.1999998</Y>
<Z>-3</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>10</X>
<Y>2</Y>
<Z>10</Z>
</Vector3>
</Properties>
</Item>
<Item class="Part" referent="RBX8">
<Properties>
<bool name="Anchored">false</bool>
<float name="BackParamA">-0.5</float>
<float name="BackParamB">0.5</float>
<token name="BackSurface">0</token>
<token name="BackSurfaceInput">0</token>
<float name="BottomParamA">-0.5</float>
<float name="BottomParamB">0.5</float>
<token name="BottomSurface">4</token>
<token name="BottomSurfaceInput">0</token>
<int name="BrickColor">28</int>
<CoordinateFrame name="CFrame">
<X>2</X>
<Y>13.1999998</Y>
<Z>-3</Z>
<R00>-1</R00>
<R01>0</R01>
<R02>0</R02>
<R10>0</R10>
<R11>1</R11>
<R12>0</R12>
<R20>0</R20>
<R21>0</R21>
<R22>-1</R22>
</CoordinateFrame>
<bool name="CanCollide">true</bool>
<token name="Controller">0</token>
<bool name="ControllerFlagShown">true</bool>
<bool name="DraggingV1">false</bool>
<float name="Elasticity">0.5</float>
<token name="FormFactor">0</token>
<float name="Friction">0.300000012</float>
<float name="FrontParamA">-0.5</float>
<float name="FrontParamB">0.5</float>
<token name="FrontSurface">0</token>
<token name="FrontSurfaceInput">0</token>
<float name="LeftParamA">-0.5</float>
<float name="LeftParamB">0.5</float>
<token name="LeftSurface">0</token>
<token name="LeftSurfaceInput">0</token>
<bool name="Locked">false</bool>
<string name="Name">Smooth Block Model</string>
<float name="Reflectance">0</float>
<float name="RightParamA">-0.5</float>
<float name="RightParamB">0.5</float>
<token name="RightSurface">0</token>
<token name="RightSurfaceInput">0</token>
<Vector3 name="RotVelocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<float name="TopParamA">-0.5</float>
<float name="TopParamB">0.5</float>
<token name="TopSurface">3</token>
<token name="TopSurfaceInput">0</token>
<float name="Transparency">0</float>
<Vector3 name="Velocity">
<X>0</X>
<Y>0</Y>
<Z>0</Z>
</Vector3>
<bool name="archivable">true</bool>
<token name="shape">1</token>
<Vector3 name="size">
<X>6</X>
<Y>2</Y>
<Z>6</Z>
</Vector3>
</Properties>
</Item>
</Item>
<Item class="RunService" referent="RBX9">
<Properties>
<string name="Name">Run Service</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX10</External>
<External>RBX11</External>
<Item class="Players" referent="RBX12">
<Properties>
<int name="MaxPlayers">12</int>
<string name="Name">Players</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="StarterPack" referent="RBX13">
<Properties>
<string name="Name">StarterPack</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="SoundService" referent="RBX14">
<Properties>
<token name="AmbientReverb">0</token>
<float name="DistanceFactor">10</float>
<float name="DopplerScale">1</float>
<string name="Name">Soundscape</string>
<float name="RolloffScale">1</float>
<bool name="archivable">true</bool>
</Properties>
<External>RBX15</External>
<External>RBX16</External>
<External>RBX17</External>
<External>RBX18</External>
<External>RBX19</External>
<External>RBX20</External>
<External>RBX21</External>
<External>RBX22</External>
<External>RBX23</External>
<External>RBX24</External>
<External>RBX25</External>
<External>RBX26</External>
<External>RBX27</External>
<External>RBX28</External>
</Item>
<Item class="ContentProvider" referent="RBX29">
<Properties>
<string name="Name">Instance</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="PhysicsService" referent="RBX30">
<Properties>
<string name="Name">PhysicsService</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX31</External>
<Item class="Selection" referent="RBX32">
<Properties>
<string name="Name">Selection</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX33</External>
<Item class="Lighting" referent="RBX34">
<Properties>
<Color3 name="Ambient">4286611584</Color3>
<float name="Brightness">1</float>
<Color3 name="ColorShift_Bottom">4278190080</Color3>
<Color3 name="ColorShift_Top">4278190080</Color3>
<float name="GeographicLatitude">41.7332993</float>
<string name="Name">Lighting</string>
<Color3 name="ShadowColor">4289967032</Color3>
<string name="TimeOfDay">14:00:00</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ControllerService" referent="RBX35">
<Properties>
<string name="Name">Instance</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<Item class="ChangeHistoryService" referent="RBX36">
<Properties>
<string name="Name">ChangeHistoryService</string>
<bool name="archivable">true</bool>
</Properties>
</Item>
<External>RBX37</External>
</roblox>

View File

@@ -22,7 +22,7 @@
} }
</style> </style>
<body style="background-color: ButtonFace; margin: 0; padding: 5px; overflow: hidden; border: outset 2px;"> <body style="background-color: ButtonFace; margin: 0; padding: 5px; overflow: hidden; border: outset 2px;">
<span class="container" onmousedown="toolOvr(this)" onmouseup="toolOut(this)" onmouseout="toolOut(this)" onclick="window.external.ToggleHopperBin(0)"> <span class="container" onmousedown="toolOvr(this)" onmouseup="toolOut(this)" onmouseout="toolOut(this)" onclick="alert(window.external.ToggleHopperBin(0))">
<img src="../images/GameTool.png" /> <img src="../images/GameTool.png" />
</span> </span>
<span class="container" onmousedown="toolOvr(this)" onmouseup="toolOut(this)" onmouseout="toolOut(this)" onclick="window.external.ToggleHopperBin(1)"> <span class="container" onmousedown="toolOvr(this)" onmouseup="toolOut(this)" onmouseout="toolOut(this)" onclick="window.external.ToggleHopperBin(1)">

BIN
ode-0.5.7z Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -5,21 +5,13 @@ class LevelInstance :
public Instance public Instance
{ {
public: public:
std::string SplashHTML;
LevelInstance(void); LevelInstance(void);
~LevelInstance(void); ~LevelInstance(void);
bool HighScoreIsGood;
Enum::ActionType::Value TimerUpAction;
Enum::AffectType::Value TimerAffectsScore;
bool RunOnOpen;
float timer; float timer;
int score; int score;
virtual std::vector<PROPGRIDITEM> getProperties(); virtual std::vector<PROPGRIDITEM> getProperties();
std::string winMessage; std::string winMessage;
std::string loseMessage; std::string loseMessage;
virtual void PropUpdate(LPPROPGRIDITEM &pItem); virtual void PropUpdate(LPPROPGRIDITEM &pItem);
void winCondition();
void loseCondition();
void pauseCondition();
void drawCondition();
void Step(SimTime sdt);
}; };

View File

@@ -56,13 +56,11 @@ public:
void setAnchored(bool anchored); void setAnchored(bool anchored);
bool isAnchored(); bool isAnchored();
float getMass(); float getMass();
bool isDragging();
void setDragging(bool value);
//Collision //Collision
bool collides(PartInstance * part); bool collides(PartInstance * part);
bool collides(Box); bool collides(Box);
//Properties //Properties
virtual std::vector<PROPGRIDITEM> getProperties(); virtual std::vector<PROPGRIDITEM> getProperties();
virtual void PropUpdate(LPPROPGRIDITEM &pItem); virtual void PropUpdate(LPPROPGRIDITEM &pItem);
@@ -73,7 +71,6 @@ private:
Vector3 velocity; Vector3 velocity;
Vector3 rotVelocity; Vector3 rotVelocity;
bool changed; bool changed;
bool dragging;
Box itemBox; Box itemBox;
GLuint glList; GLuint glList;
}; };

View File

@@ -20,16 +20,4 @@ namespace Enum
Player = 7, KeyboardRight = 1, KeyboardLeft = 2, Joypad1 = 3, Joypad2 = 4, Chase = 5, Flee = 6, None = 0 Player = 7, KeyboardRight = 1, KeyboardLeft = 2, Joypad1 = 3, Joypad2 = 4, Chase = 5, Flee = 6, None = 0
}; };
} }
namespace ActionType
{
enum Value {
Nothing = 0, Pause = 1, Lose = 2, Draw = 3, Win = 4
};
}
namespace AffectType
{
enum Value {
NoChange = 0, Increase = 1, Decrease = 2
};
}
} }

3
src/include/SplashHTML.h Normal file
View File

@@ -0,0 +1,3 @@
#include <string>
//int SplashHTMLLoad(std::string strHTML);
int SplashHTMLLoad(std::string strHTML);

View File

@@ -13,7 +13,6 @@ public:
void onSelect(Mouse mouse); void onSelect(Mouse mouse);
void onKeyDown(int key); void onKeyDown(int key);
void onKeyUp(int key); void onKeyUp(int key);
void roundDeg(float &degree);
private: private:
bool lctrlDown; bool lctrlDown;
bool rctrlDown; bool rctrlDown;
@@ -21,5 +20,4 @@ private:
int mouseDownStarty; int mouseDownStarty;
bool dragging; bool dragging;
bool mouseDown; bool mouseDown;
Vector3 draggingPartOffset;
}; };

View File

@@ -1,11 +0,0 @@
#pragma once
namespace Enum
{
namespace Hopper
{
enum Value {
GameTool = 0, Grab = 1, Clone = 2, Hammer = 3, Slingshot = 4, Rocket = 5, Laser = 6
};
}
}

View File

@@ -1,26 +0,0 @@
#ifndef COMPAT_SHIM
#define COMPAT_SHIM
#include <sstream>
#include <string>
template<class T>
std::string toString(const T &value)
{
std::ostringstream os;
os << value;
return os.str();
}
namespace std
{
std::string to_string( int value ) {return toString(value);}
std::string to_string( long value ) {return toString(value);}
std::string to_string( long long value ) {return toString(value);}
std::string to_string( unsigned value ) {return toString(value);}
std::string to_string( unsigned long value ) {return toString(value);}
std::string to_string( unsigned long long value ) {return toString(value);}
std::string to_string( float value ) {return toString(value);}
std::string to_string( double value ) {return toString(value);}
std::string to_string( long double value ) {return toString(value);}
}
#endif

View File

@@ -15,6 +15,5 @@ public:
void step(float stepSize); void step(float stepSize);
void createBody(PartInstance* partInstance); void createBody(PartInstance* partInstance);
void deleteBody(PartInstance* partInstance); void deleteBody(PartInstance* partInstance);
void updateBody(PartInstance* partInstance); void updateBody(PartInstance* partInstance, CoordinateFrame * cFrame);
void resetBody(PartInstance* partInstance);
}; };

View File

@@ -1,23 +0,0 @@
#ifndef APP_GENER
//#define SNAPSHOT_VERSION
#define APP_GENER 0
#define APP_MAJOR 0
#define APP_MINOR 107
#define APP_PATCH 1
#define APP_VER_STRING APP_GENER.APP_MAJOR.APP_MINOR.APP_PATCH
#ifdef SNAPSHOT_VERSION
#define VER_PREFIX( N ) v##N-SNAPSHOT
#else
#define VER_PREFIX( N ) v##N
#endif
#define HSTR( N ) #N
#define STR( N ) HSTR( N )
#define VER_STR( N ) STR( VER_PREFIX( N ) )
#endif

View File

@@ -25,6 +25,7 @@
#include "PropertyWindow.h" #include "PropertyWindow.h"
#include <commctrl.h> #include <commctrl.h>
#include "StringFunctions.h" #include "StringFunctions.h"
#include "SplashHTML.h"
#include "Listener/GUDButtonListener.h" #include "Listener/GUDButtonListener.h"
#include "Listener/ModeSelectionListener.h" #include "Listener/ModeSelectionListener.h"
@@ -285,6 +286,9 @@ void Application::onInit() {
#else #else
_dataModel->debugGetOpen(); _dataModel->debugGetOpen();
#endif #endif
LevelInstance * level = g_dataModel->getLevel();
std::string GetCurrentSplash = level->SplashHTML;
SplashHTMLLoad(GetCurrentSplash);
_dataModel->getSelectionService()->clearSelection(); _dataModel->getSelectionService()->clearSelection();
_dataModel->getSelectionService()->addSelected(_dataModel); _dataModel->getSelectionService()->addSelected(_dataModel);
@@ -323,9 +327,6 @@ void Application::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) {
if(_dataModel->isRunning()) if(_dataModel->isRunning())
{ {
LevelInstance* Level = _dataModel->getLevel();
Level->Step(sdt);
// XplicitNgine Start // XplicitNgine Start
std::vector<PartInstance *> toDelete; std::vector<PartInstance *> toDelete;
for(size_t i = 0; i < _dataModel->getWorkspace()->partObjects.size(); i++) for(size_t i = 0; i < _dataModel->getWorkspace()->partObjects.size(); i++)
@@ -342,14 +343,13 @@ void Application::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) {
{ {
PartInstance * p = toDelete.back(); PartInstance * p = toDelete.back();
toDelete.pop_back(); toDelete.pop_back();
if(g_dataModel->getSelectionService()->isSelected(p)) g_dataModel->getSelectionService()->removeSelected(p);
g_dataModel->getSelectionService()->removeSelected(p);
p->setParent(NULL); p->setParent(NULL);
delete p; delete p;
} }
for(int i = 0; i < 4; i++) for(int i = 0; i < 6; i++)
{ {
_dataModel->getEngine()->step(0.03F); _dataModel->getEngine()->step(0.1F);
} }
onLogic(); onLogic();
@@ -569,12 +569,12 @@ void Application::onGraphics(RenderDevice* rd) {
//renderDevice->setShininess(70); renderDevice->setShininess(70);
//renderDevice->setSpecularCoefficient(Color3(0.1F, 0.1F, 0.1F)); renderDevice->setSpecularCoefficient(Color3(0.1F, 0.1F, 0.1F));
//float lightAmbient[] = { 0.5F, 0.5F, 0.5F, 1.0F }; //float lightAmbient[] = { 0.5F, 0.6F, 0.9F, 1.0F };
//float lightDiffuse[] = { 0.6F, 0.6F, 0.6F, 1.0F }; //float lightDiffuse[] = { 0.6F, 0.4F, 0.9F, 1.0F };
//float lightSpecular[] = { 0.8F, 0.8F, 0.8F, 1.0F }; //float lightSpecular[] = { 0.8F, 0.6F, 1.0F, 1.0F };
//glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, lightAmbient); //glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, lightAmbient);
//glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, lightDiffuse); //glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, lightDiffuse);

View File

@@ -1,9 +1,9 @@
#include "DataModelV2/DataModelInstance.h"
#include "DataModelV2/LevelInstance.h" #include "DataModelV2/LevelInstance.h"
LevelInstance::LevelInstance(void) LevelInstance::LevelInstance(void)
{ {
Instance::Instance(); Instance::Instance();
SplashHTML = "<html><body><b>Test</b><body></html>";
name = "Level"; name = "Level";
winMessage = "You Won!"; winMessage = "You Won!";
loseMessage = "You Lost. Try Again"; loseMessage = "You Lost. Try Again";
@@ -17,61 +17,6 @@ LevelInstance::~LevelInstance(void)
} }
static TCHAR* strActionType(int option)
{
switch(option)
{
case Enum::ActionType::Nothing:
return "Nothing";
case Enum::ActionType::Pause:
return "Pause";
case Enum::ActionType::Lose:
return "Lose";
case Enum::ActionType::Draw:
return "Draw";
case Enum::ActionType::Win:
return "Win";
}
return "Nothing";
}
static Enum::ActionType::Value EnumActionType(TCHAR* option)
{
if(strcmp("Nothing", option) == 0)
return Enum::ActionType::Nothing;
if(strcmp("Pause", option) == 0)
return Enum::ActionType::Pause;
if(strcmp("Lose", option) == 0)
return Enum::ActionType::Lose;
if(strcmp("Draw", option) == 0)
return Enum::ActionType::Draw;
return Enum::ActionType::Win;
}
static TCHAR* strAffectType(int option)
{
switch(option)
{
case Enum::AffectType::NoChange:
return "NoChange";
case Enum::AffectType::Increase:
return "Increase";
case Enum::AffectType::Decrease:
return "Decrease";
}
return "NoChange";
}
static Enum::AffectType::Value EnumAffectType(TCHAR* option)
{
if(strcmp("NoChange", option) == 0)
return Enum::AffectType::NoChange;
if(strcmp("Increase", option) == 0)
return Enum::AffectType::Increase;
return Enum::AffectType::Decrease;
}
char timerTxt[12]; char timerTxt[12];
char scoreTxt[12]; char scoreTxt[12];
std::vector<PROPGRIDITEM> LevelInstance::getProperties() std::vector<PROPGRIDITEM> LevelInstance::getProperties()
@@ -79,34 +24,23 @@ std::vector<PROPGRIDITEM> LevelInstance::getProperties()
std::vector<PROPGRIDITEM> properties = Instance::getProperties(); std::vector<PROPGRIDITEM> properties = Instance::getProperties();
properties.push_back(createPGI("Properties",
"SplashHTML",
"HTML that shows when the Level is loaded.",
(LPARAM)SplashHTML.c_str(),
PIT_EDIT));
properties.push_back(createPGI("Messages", properties.push_back(createPGI("Messages",
"WinMessage", "WinMessage",
"The message that shows when the player wins.", "The message that shows when the player wins.",
(LPARAM)winMessage.c_str(), (LPARAM)winMessage.c_str(),
PIT_EDIT)); PIT_EDIT));
properties.push_back(createPGI("Messages", properties.push_back(createPGI("Messages",
"LoseMessage", "LoseMessage",
"The message that shows when the player loses.", "The message that shows when the player loses.",
(LPARAM)loseMessage.c_str(), (LPARAM)loseMessage.c_str(),
PIT_EDIT)); PIT_EDIT));
properties.push_back(createPGI(
"Gameplay",
"HighScoreIsGood",
"Some temporary string here",
(LPARAM)HighScoreIsGood,
PIT_CHECK
));
properties.push_back(createPGI(
"Gameplay",
"RunOnOpen",
"Some temporary string here",
(LPARAM)RunOnOpen,
PIT_CHECK
));
sprintf_s(timerTxt, "%g", timer); sprintf_s(timerTxt, "%g", timer);
sprintf_s(scoreTxt, "%d", score); sprintf_s(scoreTxt, "%d", score);
@@ -115,28 +49,11 @@ std::vector<PROPGRIDITEM> LevelInstance::getProperties()
"The amount of time in seconds the player has to complete this level.\r\n\r\nPut 0 if time is limitless.", "The amount of time in seconds the player has to complete this level.\r\n\r\nPut 0 if time is limitless.",
(LPARAM)timerTxt, (LPARAM)timerTxt,
PIT_EDIT)); PIT_EDIT));
properties.push_back(createPGI("Gameplay", properties.push_back(createPGI("Gameplay",
"InitialScoreValue", "InitialScoreValue",
"The amount of points the player starts with.", "The amount of points the player starts with.",
(LPARAM)scoreTxt, (LPARAM)scoreTxt,
PIT_EDIT)); PIT_EDIT));
properties.push_back(createPGI("Gameplay",
"TimerUpAction",
"Some temporary string here",
(LPARAM)strActionType(TimerUpAction),
PIT_COMBO,
TEXT("Nothing\0Pause\0Lose\0Draw\0Win\0")
));
properties.push_back(createPGI("Gameplay",
"TimerAffectsScore",
"Some temporary string here",
(LPARAM)strAffectType(TimerAffectsScore),
PIT_COMBO,
TEXT("NoChange\0Increase\0Decrease\0")
));
return properties; return properties;
} }
void LevelInstance::PropUpdate(LPPROPGRIDITEM &pItem) void LevelInstance::PropUpdate(LPPROPGRIDITEM &pItem)
@@ -157,87 +74,6 @@ void LevelInstance::PropUpdate(LPPROPGRIDITEM &pItem)
{ {
winMessage = (LPSTR)pItem->lpCurValue; winMessage = (LPSTR)pItem->lpCurValue;
} }
else if(strcmp(pItem->lpszPropName, "TimerUpAction") == 0)
{
TimerUpAction = EnumActionType((TCHAR*)pItem->lpCurValue);
}
else if(strcmp(pItem->lpszPropName, "TimerAffectsScore") == 0)
{
TimerAffectsScore = EnumAffectType((TCHAR*)pItem->lpCurValue);
}
else if(strcmp(pItem->lpszPropName, "HighScoreIsGood") == 0)
{
HighScoreIsGood = pItem->lpCurValue == TRUE;
}
else if(strcmp(pItem->lpszPropName, "RunOnOpen") == 0)
{
RunOnOpen = pItem->lpCurValue == TRUE;
}
else else
Instance::PropUpdate(pItem); Instance::PropUpdate(pItem);
} }
void LevelInstance::winCondition()
{
DataModelInstance* DataModel = (DataModelInstance*)getParent(); //If level parent gets changed to something other than Datamodel it could cause nasty data corruption bugs
DataModel->setMessage(winMessage);
DataModel->toggleRun();
}
void LevelInstance::loseCondition()
{
DataModelInstance* DataModel = (DataModelInstance*)getParent();
DataModel->setMessage(loseMessage);
DataModel->toggleRun();
}
void LevelInstance::pauseCondition()
{
DataModelInstance* DataModel = (DataModelInstance*)getParent();
DataModel->toggleRun();
}
void LevelInstance::drawCondition()
{
DataModelInstance* DataModel = (DataModelInstance*)getParent();
DataModel->toggleRun();
}
void LevelInstance::Step(SimTime sdt)
{
switch(TimerAffectsScore)
{
case Enum::AffectType::NoChange:
break;
case Enum::AffectType::Increase:
score += 1;
break;
case Enum::AffectType::Decrease:
if (score > 0)
score -= 1;
break;
}
if (timer >= 0.1f){ //Due to timing used this could cause the number go into negatives for one step
timer -= sdt;
}
else{
timer = 0.0f;
switch(TimerUpAction)
{
case Enum::ActionType::Nothing:
break;
case Enum::ActionType::Pause:
pauseCondition();
break;
case Enum::ActionType::Lose:
loseCondition();
break;
case Enum::ActionType::Draw:
drawCondition();
break;
case Enum::ActionType::Win:
winCondition();
break;
}
}
}

View File

@@ -14,7 +14,6 @@ PartInstance::PartInstance(void)
className = "Part"; className = "Part";
canCollide = true; canCollide = true;
anchored = false; anchored = false;
dragging = false;
size = Vector3(2,1,4); size = Vector3(2,1,4);
setCFrame(CoordinateFrame(Vector3(0,0,0))); setCFrame(CoordinateFrame(Vector3(0,0,0)));
color = Color3::gray(); color = Color3::gray();
@@ -29,20 +28,6 @@ PartInstance::PartInstance(void)
shape = Enum::Shape::Block; shape = Enum::Shape::Block;
} }
bool PartInstance::isDragging()
{
return dragging;
}
void PartInstance::setDragging(bool value)
{
if (dragging != value)
{
dragging = value;
g_dataModel->getEngine()->resetBody(this);
}
}
float PartInstance::getMass() float PartInstance::getMass()
{ {
if(shape == Enum::Shape::Block) if(shape == Enum::Shape::Block)
@@ -132,10 +117,7 @@ void PartInstance::setSurface(int face, Enum::SurfaceType::Value surface)
void PartInstance::setParent(Instance* prnt) void PartInstance::setParent(Instance* prnt)
{ {
if(this->physBody != NULL) g_dataModel->getEngine()->deleteBody(this);
{
g_dataModel->getEngine()->deleteBody(this);
}
Instance * cparent = getParent(); Instance * cparent = getParent();
while(cparent != NULL) while(cparent != NULL)
{ {
@@ -220,8 +202,8 @@ void PartInstance::setSize(Vector3 newSize)
size = Vector3(sizex, sizey, sizez); size = Vector3(sizex, sizey, sizez);
if(this->physBody != NULL)
g_dataModel->getEngine()->resetBody(this);
} }
Vector3 PartInstance::getSize() Vector3 PartInstance::getSize()
{ {
@@ -242,9 +224,6 @@ void PartInstance::setShape(Enum::Shape::Value shape)
this->shape = shape; this->shape = shape;
this->setSize(this->getSize()); this->setSize(this->getSize());
} }
if(this->physBody != NULL)
g_dataModel->getEngine()->resetBody(this);
changed = true; changed = true;
} }
@@ -252,16 +231,12 @@ void PartInstance::setPosition(Vector3 pos)
{ {
position = pos; position = pos;
setCFrame(CoordinateFrame(cFrame.rotation, pos)); setCFrame(CoordinateFrame(cFrame.rotation, pos));
if (anchored)
g_dataModel->getEngine()->resetBody(this);
} }
void PartInstance::setAnchored(bool anchored) void PartInstance::setAnchored(bool anchored)
{ {
this->anchored = anchored; this->anchored = anchored;
if(this->physBody != NULL) g_dataModel->getEngine()->deleteBody(this);
g_dataModel->getEngine()->resetBody(this);
} }
bool PartInstance::isAnchored() bool PartInstance::isAnchored()
@@ -276,14 +251,15 @@ CoordinateFrame PartInstance::getCFrame()
} }
void PartInstance::setCFrame(CoordinateFrame coordinateFrame) void PartInstance::setCFrame(CoordinateFrame coordinateFrame)
{ {
g_dataModel->getEngine()->updateBody(this, &coordinateFrame);
setCFrameNoSync(coordinateFrame); setCFrameNoSync(coordinateFrame);
g_dataModel->getEngine()->updateBody(this);
} }
void PartInstance::setCFrameNoSync(CoordinateFrame coordinateFrame) void PartInstance::setCFrameNoSync(CoordinateFrame coordinateFrame)
{ {
cFrame = coordinateFrame; cFrame = coordinateFrame;
position = coordinateFrame.translation; position = coordinateFrame.translation;
changed = true;
} }
bool PartInstance::collides(PartInstance * part) bool PartInstance::collides(PartInstance * part)

View File

@@ -2,6 +2,7 @@
#define WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN
#endif #endif
#include <windows.h> #include <windows.h>
#include <Commdlg.h> #include <Commdlg.h>
#include "IEBrowser.h" #include "IEBrowser.h"
@@ -10,9 +11,6 @@
#include "ax.h" #include "ax.h"
#include "Tool/SurfaceTool.h" #include "Tool/SurfaceTool.h"
#include "Application.h" #include "Application.h"
#include "Enum.h"
#include "ToolEnum.h"
#include "VS2005CompatShim.h"
HRESULT IEBrowser::doExternal(std::wstring funcName, HRESULT IEBrowser::doExternal(std::wstring funcName,
DISPID dispIdMember, DISPID dispIdMember,
@@ -32,24 +30,9 @@ HRESULT IEBrowser::doExternal(std::wstring funcName,
} }
else if (funcName==L"ToggleHopperBin") else if (funcName==L"ToggleHopperBin")
{ {
MessageBox(NULL, "BOOP", "Boopity boop",MB_OK); pVarResult->vt = VT_INT;
pVarResult->intVal = 5;
/*To-do Make enums in ToolEnum work with this properly, //MessageBox(NULL, "BOOP", "Boopity boop",MB_OK);
commented code is not fully tested.*/
/*MessageBox(NULL,
std::to_string(pDispParams->rgvarg->intVal).c_str(),
"Is it working?",
MB_OK);
Enum::Hopper::Value cont = (Enum::Hopper::Value)pDispParams->rgvarg->intVal;
switch (cont)
{
case GameTool
case Grab
break;
}*/
return S_OK;
} }
else if (funcName==L"SetController") else if (funcName==L"SetController")
{ {

94
src/source/SplashHTML.cpp Normal file
View File

@@ -0,0 +1,94 @@
#include "DataModelV2/LevelInstance.h"
#include "Globals.h"
#include "SplashHTML.h"
#include "Application.h"
#include <windows.h>
#include <MsHTML.h>
#include <Exdisp.h>
#include <ExDispid.h>
#include <shlwapi.h>
HWND SplashHTMLContainer()
{
HWND invisWindowHandle = CreateWindowEx(WS_EX_TOOLWINDOW,
"htmlWindow",
"Splash",
WS_OVERLAPPEDWINDOW & ~WS_MAXIMIZEBOX & ~WS_THICKFRAME,
200,
200,
500,
300,
NULL,
NULL,
NULL,
NULL);
printf("Creating Window HWND: %u\n", invisWindowHandle);
ShowWindow(invisWindowHandle, 1);
UpdateWindow(invisWindowHandle);
return invisWindowHandle;
}
void PH()
//int SplashHTMLLoad(std::string strHTML)
{
SplashHTMLContainer();
IHTMLDocument2 *document; // Declared earlier in the code
BSTR bstr = SysAllocString(OLESTR("Written by IHTMLDocument2::write()."));
// Creates a new one-dimensional array
SAFEARRAY *psaStrings = SafeArrayCreateVector(VT_VARIANT, 0, 1);
if (psaStrings == NULL) {
goto cleanup;
}
VARIANT *param;
HRESULT hr = SafeArrayAccessData(psaStrings, (LPVOID*)&param);
param->vt = VT_BSTR;
param->bstrVal = bstr;
hr = SafeArrayUnaccessData(psaStrings);
//hr = document->write(psaStrings);
cleanup:
// SafeArrayDestroy calls SysFreeString for each BSTR
if (psaStrings != NULL) {
SafeArrayDestroy(psaStrings);
}
}
int SplashHTMLLoad(std::string strHTML)
{
HWND splashContainer = SplashHTMLContainer();
SHANDLE_PTR browserHWND;
HWND parentResultSplash;
HRESULT InstanciateIEResult;
HRESULT NavigateResult;
HRESULT ShowBrowserResult;
VARIANT empty;
VariantInit(&empty);
IWebBrowser2* browser = NULL;
HRESULT hr = CoCreateInstance(CLSID_InternetExplorer, NULL,
CLSCTX_LOCAL_SERVER, IID_IWebBrowser2, (void**)&browser);
std::wstring HtmlWide;
HtmlWide.assign( strHTML.begin(), strHTML.end() );
if (browser)
{
BSTR URL = SysAllocString(L"http://google.com");
browser->put_AddressBar(false);
browser->put_ToolBar(false);
browser->put_TheaterMode(false);
browser->put_Width(500);
browser->put_Height(300);
browser->Navigate(URL, &empty, &empty, &empty, &empty);
SysFreeString(URL);
ShowBrowserResult = browser->get_HWND(&browserHWND);
ShowBrowserResult = browser->put_Visible(VARIANT_TRUE);
browser->Release();
parentResultSplash = SetParent((HWND)&browserHWND, splashContainer);
}
printf("%s \n%u \n%u \n", strHTML.c_str(), (HWND)&browserHWND, parentResultSplash);
CoUninitialize();
return 0;
}

View File

@@ -25,13 +25,7 @@ void ArrowTool::onButton1MouseDown(Mouse mouse)
g_dataModel->getSelectionService()->clearSelection(); g_dataModel->getSelectionService()->clearSelection();
PartInstance * target = mouse.getTarget(); PartInstance * target = mouse.getTarget();
if(target != NULL) if(target != NULL)
{
Vector3 mousePos = mouse.getPosition(g_dataModel->getSelectionService()->getSelection());
Vector3 targetPos = target->getPosition();
g_dataModel->getSelectionService()->addSelected(target); g_dataModel->getSelectionService()->addSelected(target);
draggingPartOffset = targetPos-mousePos;
}
if(g_dataModel->getSelectionService()->getSelection().size() == 0) if(g_dataModel->getSelectionService()->getSelection().size() == 0)
g_dataModel->getSelectionService()->addSelected(g_dataModel); g_dataModel->getSelectionService()->addSelected(g_dataModel);
} }
@@ -39,14 +33,6 @@ void ArrowTool::onButton1MouseUp(Mouse mouse)
{ {
mouseDown = false; mouseDown = false;
dragging = false; dragging = false;
for(size_t i = 0; i < g_dataModel->getSelectionService()->getSelection().size(); i++) //This will later decide primary and move all parts according to primary
{
if(PartInstance * part = dynamic_cast<PartInstance *>(g_dataModel->getSelectionService()->getSelection()[i]))
{
part->setDragging(false);
}
}
} }
void ArrowTool::onMouseMoved(Mouse mouse) void ArrowTool::onMouseMoved(Mouse mouse)
@@ -65,41 +51,7 @@ void ArrowTool::onMouseMoved(Mouse mouse)
{ {
if(PartInstance * part = dynamic_cast<PartInstance *>(g_dataModel->getSelectionService()->getSelection()[i])) if(PartInstance * part = dynamic_cast<PartInstance *>(g_dataModel->getSelectionService()->getSelection()[i]))
{ {
Vector3 mousePos = mouse.getPosition(g_dataModel->getSelectionService()->getSelection()); part->setPosition(mouse.getPosition(g_dataModel->getSelectionService()->getSelection()));
Vector3 vec = mousePos + draggingPartOffset;
vec.x = (ceil(vec.x / 1) * 1);
vec.y = (ceil(vec.y / 1) * 1);
vec.z = (ceil(vec.z / 1) * 1);
if ( ((int)part->getSize().x)%2 == 1 )
vec.x += 0.5;
vec.y = mousePos.y + part->getSize().y/2 - 0.5;
if ( ((int)part->getSize().z)%2 == 1 )
vec.z += 0.5;
Matrix3 rot = part->getCFrame().rotation;
Vector3 rotEulerAngles;
rot.toEulerAnglesXYZ(rotEulerAngles.x, rotEulerAngles.y, rotEulerAngles.z);
rotEulerAngles = Vector3(
rotEulerAngles.x * 180 / M_PI,
rotEulerAngles.y * 180 / M_PI,
rotEulerAngles.z * 180 / M_PI
);
roundDeg(rotEulerAngles.x);
roundDeg(rotEulerAngles.y);
roundDeg(rotEulerAngles.z);
rot = rot.fromEulerAnglesXYZ( rotEulerAngles.x * (M_PI / 180), rotEulerAngles.y * (M_PI / 180), rotEulerAngles.z * (M_PI / 180) );
part->setDragging(true);
part->setPosition(vec);
part->setCFrame(CoordinateFrame(rot, vec));
} }
} }
return; return;
@@ -123,20 +75,4 @@ void ArrowTool::onKeyUp(int key)
{ {
if(key == VK_CONTROL) if(key == VK_CONTROL)
lctrlDown = false; lctrlDown = false;
}
void ArrowTool::roundDeg(float &degree)
{
if ( ( degree < 0 && degree > -45 ) || ( degree > 0 && degree < 45 ) )
{
degree = 0;
}
else if ( ( degree < 0 && degree > -90 ) || ( degree > 45 && degree < 90 ) )
{
degree = 90;
}
else if ( ( degree < 0 && degree > -180 ) || ( degree > 90 && degree < 180 ) )
{
degree = 180;
}
} }

View File

@@ -1,26 +1,21 @@
#include "XplicitNgine/XplicitNgine.h" #include "XplicitNgine/XplicitNgine.h"
#include "Globals.h" #include "Globals.h"
//#define SIDE (0.5f) #define SIDE (0.5f)
//#define MASS (1.0) #define MASS (1.0)
// constraints // constraints
//#define MAX_BODIES 65535 #define MAX_BODIES 65535
//#define OBJ_DENSITY (5.0) #define OBJ_DENSITY (5.0)
//#define MAX_CONTACT_PER_BODY 4 #define MAX_CONTACT_PER_BODY 4
XplicitNgine::XplicitNgine() XplicitNgine::XplicitNgine()
{ {
physWorld = dWorldCreate(); physWorld = dWorldCreate();
physSpace = dHashSpaceCreate(0); physSpace = dHashSpaceCreate(0);
contactgroup = dJointGroupCreate(0); contactgroup = dJointGroupCreate(0);
dWorldSetGravity(physWorld, 0, -9.8F, 0); dWorldSetGravity(physWorld, 0, -0.5, 0);
dWorldSetAutoDisableFlag(physWorld, 1);
dWorldSetAutoDisableLinearThreshold(physWorld, 0.5F);
dWorldSetAutoDisableAngularThreshold(physWorld, 0.5F);
dWorldSetAutoDisableSteps(physWorld, 20);
this->name = "PhysicsService"; this->name = "PhysicsService";
//dGeomID ground_geom = dCreatePlane(physSpace, 0, 1, 0, 0); //dGeomID ground_geom = dCreatePlane(physSpace, 0, 1, 0, 0);
@@ -34,19 +29,12 @@ XplicitNgine::~XplicitNgine()
dCloseODE(); dCloseODE();
} }
void XplicitNgine::resetBody(PartInstance* partInstance)
{
deleteBody(partInstance);
createBody(partInstance);
}
void collisionCallback(void *data, dGeomID o1, dGeomID o2) void collisionCallback(void *data, dGeomID o1, dGeomID o2)
{ {
int i,n; int i,n;
dBodyID b1 = dGeomGetBody(o1); dBodyID b1 = dGeomGetBody(o1);
dBodyID b2 = dGeomGetBody(o2); dBodyID b2 = dGeomGetBody(o2);
if (b1 && b2 && dAreConnected(b1, b2)) if (b1 && b2 && dAreConnected(b1, b2))
return; return;
@@ -60,7 +48,7 @@ void collisionCallback(void *data, dGeomID o1, dGeomID o2)
// Define contact surface properties // Define contact surface properties
contact[i].surface.bounce = 0.5; //Elasticity contact[i].surface.bounce = 0.5; //Elasticity
contact[i].surface.mu = 0.4F; //Friction contact[i].surface.mu = 0.3F; //Friction
contact[i].surface.slip1 = 0.0; contact[i].surface.slip1 = 0.0;
contact[i].surface.slip2 = 0.0; contact[i].surface.slip2 = 0.0;
contact[i].surface.soft_erp = 0.8F; contact[i].surface.soft_erp = 0.8F;
@@ -82,36 +70,8 @@ void XplicitNgine::deleteBody(PartInstance* partInstance)
{ {
if(partInstance->physBody != NULL) if(partInstance->physBody != NULL)
{ {
dBodyEnable(partInstance->physBody); while(dBodyGetNumJoints(partInstance->physBody) > 0) {
dGeomEnable(partInstance->physGeom[0]); dJointDestroy(dBodyGetJoint(partInstance->physBody, 0));
if(partInstance->isAnchored() || partInstance->isDragging())
{
dGeomSetBody(partInstance->physGeom[0], partInstance->physBody);
dGeomEnable(partInstance->physGeom[0]);
updateBody(partInstance);
step(0.03F);
}
for(int i = 0; i < dBodyGetNumJoints(partInstance->physBody); i++) {
dBodyID b1 = dJointGetBody(dBodyGetJoint(partInstance->physBody, i), 0);
dBodyID b2 = dJointGetBody(dBodyGetJoint(partInstance->physBody, i), 1);
if(b1 != NULL)
{
dBodyEnable(b1);
PartInstance * part = (PartInstance *)dBodyGetData(b1);
if(part != NULL)
dGeomEnable(part->physGeom[0]);
}
if(b2 != NULL)
{
dBodyEnable(b2);
PartInstance * part = (PartInstance *)dBodyGetData(b2);
if(part != NULL)
dGeomEnable(part->physGeom[0]);
}
dJointDestroy(dBodyGetJoint(partInstance->physBody, i));
} }
dBodyDestroy(partInstance->physBody); dBodyDestroy(partInstance->physBody);
dGeomDestroy(partInstance->physGeom[0]); dGeomDestroy(partInstance->physGeom[0]);
@@ -123,25 +83,19 @@ void XplicitNgine::createBody(PartInstance* partInstance)
{ {
// calculate collisions // calculate collisions
//dSpaceCollide (physSpace,0,&collisionCallback); //dSpaceCollide (physSpace,0,&collisionCallback);
if(partInstance->physBody == NULL) if(partInstance->physBody == NULL)
{ {
Vector3 partSize = partInstance->getSize();
Vector3 partPosition = partInstance->getPosition();
Vector3 velocity = partInstance->getVelocity();
Vector3 rotVelocity = partInstance->getRotVelocity();
// init body // init body
partInstance->physBody = dBodyCreate(physWorld); partInstance->physBody = dBodyCreate(physWorld);
dBodySetData(partInstance->physBody, partInstance);
// Create geom // Create geom
if(partInstance->shape == Enum::Shape::Block) if(partInstance->shape == Enum::Shape::Block)
{ {
partInstance->physGeom[0] = dCreateBox(physSpace, partInstance->physGeom[0] = dCreateBox(physSpace,
partSize.x, partInstance->getSize()[0],
partSize.y, partInstance->getSize()[1],
partSize.z partInstance->getSize()[2]
); );
dVector3 result; dVector3 result;
@@ -154,11 +108,11 @@ void XplicitNgine::createBody(PartInstance* partInstance)
} }
else else
{ {
partInstance->physGeom[0] = dCreateSphere(physSpace, partSize[0]/2); partInstance->physGeom[0] = dCreateSphere(physSpace, partInstance->getSize()[0]/2);
} }
dMass mass; dMass mass;
mass.setBox(sqrt(partSize.x*2), sqrt(partSize.y*2), sqrt(partSize.z*2), 0.7F); mass.setBox(partInstance->getSize().x, partInstance->getSize().y, partInstance->getSize().z, 0.7F);
dBodySetMass(partInstance->physBody, &mass); dBodySetMass(partInstance->physBody, &mass);
// Debug output // Debug output
@@ -167,40 +121,32 @@ void XplicitNgine::createBody(PartInstance* partInstance)
// Create rigid body // Create rigid body
//printf("[XplicitNgine] Created Geom for PartInstance\n"); //printf("[XplicitNgine] Created Geom for PartInstance\n");
dBodySetPosition(partInstance->physBody, dBodySetPosition(partInstance->physBody,
partPosition.x, partInstance->getPosition()[0],
partPosition.y, partInstance->getPosition()[1],
partPosition.z partInstance->getPosition()[2]
); );
dGeomSetPosition(partInstance->physGeom[0], dGeomSetPosition(partInstance->physGeom[0],
partPosition.x, partInstance->getPosition()[0],
partPosition.y, partInstance->getPosition()[1],
partPosition.z); partInstance->getPosition()[2]);
dBodySetLinearVel(partInstance->physBody, velocity.x, velocity.y, velocity.z);
dBodySetAngularVel(partInstance->physBody, rotVelocity.x, rotVelocity.y, rotVelocity.z);
Matrix3 g3dRot = partInstance->getCFrame().rotation; Matrix3 g3dRot = partInstance->getCFrame().rotation;
float rotation [12] = { g3dRot[0][0], g3dRot[0][1], g3dRot[0][2], 0, float rotation [12] = { g3dRot[0][0], g3dRot[0][1], g3dRot[0][2], 0,
g3dRot[1][0], g3dRot[1][1], g3dRot[1][2], 0, g3dRot[1][0], g3dRot[1][1], g3dRot[1][2], 0,
g3dRot[2][0], g3dRot[2][1], g3dRot[2][2], 0}; g3dRot[2][0], g3dRot[2][1], g3dRot[2][2], 0};
dGeomSetRotation(partInstance->physGeom[0], rotation); dGeomSetRotation(partInstance->physGeom[0], rotation);
dBodySetRotation(partInstance->physBody, rotation); dBodySetRotation(partInstance->physBody, rotation);
//printf("[XplicitNgine] Created Body for PartInstance\n"); //printf("[XplicitNgine] Created Body for PartInstance\n");
if(!partInstance->isAnchored() && !partInstance->isDragging()) if(!partInstance->isAnchored())
dGeomSetBody(partInstance->physGeom[0], partInstance->physBody); dGeomSetBody(partInstance->physGeom[0], partInstance->physBody);
} else { } else {
if(!partInstance->isAnchored() && !partInstance->isDragging()) if(!partInstance->isAnchored())
{ {
const dReal* velocity = dBodyGetLinearVel(partInstance->physBody);
const dReal* rotVelocity = dBodyGetAngularVel(partInstance->physBody);
partInstance->setVelocity(Vector3(velocity[0],velocity[1],velocity[2]));
partInstance->setRotVelocity(Vector3(rotVelocity[0],rotVelocity[1],rotVelocity[2]));
const dReal* physPosition = dBodyGetPosition(partInstance->physBody); const dReal* physPosition = dBodyGetPosition(partInstance->physBody);
// TODO: Rotation code // TODO: Rotation code
@@ -221,28 +167,24 @@ void XplicitNgine::createBody(PartInstance* partInstance)
void XplicitNgine::step(float stepSize) void XplicitNgine::step(float stepSize)
{ {
dJointGroupEmpty(contactgroup);
dSpaceCollide (physSpace,0,&collisionCallback); dSpaceCollide (physSpace,0,&collisionCallback);
dWorldQuickStep(physWorld, stepSize); dWorldQuickStep(physWorld, stepSize);
//dWorldStepFast1(physWorld, stepSize*2, 100); dJointGroupEmpty(contactgroup);
//dWorldStep(physWorld, stepSize);
} }
void XplicitNgine::updateBody(PartInstance *partInstance) void XplicitNgine::updateBody(PartInstance *partInstance, CoordinateFrame * cFrame)
{ {
if(partInstance->physBody != NULL) if(partInstance->physBody != NULL)
{ {
Vector3 position = partInstance->getCFrame().translation; Vector3 position = cFrame->translation;
dBodySetPosition(partInstance->physBody, dBodySetPosition(partInstance->physBody,
position[0], position[0],
position[1], position[1],
position[2] position[2]
); );
dBodyEnable(partInstance->physBody);
dGeomEnable(partInstance->physGeom[0]);
Matrix3 g3dRot = partInstance->getCFrame().rotation; Matrix3 g3dRot = cFrame->rotation;
float rotation [12] = { g3dRot[0][0], g3dRot[0][1], g3dRot[0][2], 0, float rotation [12] = { g3dRot[0][0], g3dRot[0][1], g3dRot[0][2], 0,
g3dRot[1][0], g3dRot[1][1], g3dRot[1][2], 0, g3dRot[1][0], g3dRot[1][1], g3dRot[1][2], 0,
g3dRot[2][0], g3dRot[2][1], g3dRot[2][2], 0}; g3dRot[2][0], g3dRot[2][1], g3dRot[2][2], 0};

View File

@@ -24,6 +24,11 @@ DISPPARAMS dispparamsNoArgs = {NULL, NULL, 0, 0};
EXCEPINFO excepinfo; EXCEPINFO excepinfo;
UINT nArgErr; UINT nArgErr;
LRESULT CALLBACK HtmlProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
return DefWindowProc(hwnd, msg, wParam, lParam);
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{ {
Application *app = (Application *)GetWindowLongPtr(hwnd, GWL_USERDATA); Application *app = (Application *)GetWindowLongPtr(hwnd, GWL_USERDATA);
@@ -185,6 +190,8 @@ int main(int argc, char** argv) {
settings.window.center = true; */ settings.window.center = true; */
HMODULE hThisInstance = GetModuleHandle(NULL); HMODULE hThisInstance = GetModuleHandle(NULL);
if (!createWindowClass("htmlWindow",HtmlProc,NULL))
return false;
if (!createWindowClass("mainHWND",WndProc,hThisInstance)) if (!createWindowClass("mainHWND",WndProc,hThisInstance))
return false; return false;
if (!createWindowClass("toolboxHWND",ToolboxProc,hThisInstance)) if (!createWindowClass("toolboxHWND",ToolboxProc,hThisInstance))

View File

@@ -3917,7 +3917,7 @@ static BOOL Grid_OnGetSel(INT iItem)
static VOID Grid_OnResetContent(VOID) static VOID Grid_OnResetContent(VOID)
{ {
ListBox_ResetContent(g_lpInst->hwndListMap); ListBox_ResetContent(g_lpInst->hwndListMap);
g_lpInst->lpCurrent = NULL;
if (NULL != g_lpInst->hwndCtl1) if (NULL != g_lpInst->hwndCtl1)
{ {
DestroyWindow(g_lpInst->hwndCtl1); DestroyWindow(g_lpInst->hwndCtl1);