Compare commits
174 Commits
v0.0.104.5
...
JointsServ
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e365f3ed6c | ||
|
|
998a22a43f | ||
|
|
abb1f76c71 | ||
|
|
85e84bfdf3 | ||
|
|
f7a76511a8 | ||
|
|
9cee74baf4 | ||
|
|
0b8847cd8e | ||
|
|
4ec70e6ee7 | ||
|
|
c6699b5112 | ||
|
|
48b90b1a93 | ||
|
|
c70d39fb25 | ||
|
|
1b34573b06 | ||
|
|
649a1aaa06 | ||
|
|
6b8ca28060 | ||
|
|
dc7f7f3cc5 | ||
|
|
575f5dab46 | ||
|
|
efbc832321 | ||
|
|
2471abb8dd | ||
|
|
57db5511bd | ||
|
|
0ac516618a | ||
|
|
8916797e55 | ||
|
|
2dc7f3e667 | ||
|
|
d32b0ea4e4 | ||
|
|
af5c31d5d0 | ||
|
|
9df862f72e | ||
|
|
d269b360ce | ||
|
|
d2dd05b620 | ||
|
|
9d62380df9 | ||
|
|
8f3d12c516 | ||
|
|
d2f3e718a7 | ||
|
|
adade066cc | ||
|
|
7e9f34e1ac | ||
|
|
5e74564956 | ||
|
|
04823f5911 | ||
|
|
e62d3ab49c | ||
|
|
fb5d6495dc | ||
|
|
5078b849b0 | ||
|
|
20e772f932 | ||
|
|
00e61d4f17 | ||
|
|
fe55127129 | ||
|
|
e8dbf50df9 | ||
|
|
6ee7d76859 | ||
|
|
8a2b7f6308 | ||
|
|
415ea71664 | ||
|
|
eefb981993 | ||
|
|
9f741e0df7 | ||
|
|
e2d75ae4d4 | ||
|
|
52c2f114a5 | ||
|
|
7f8cdc0f33 | ||
|
|
36153c293b | ||
|
|
a63aa52108 | ||
|
|
d25f4a6ba2 | ||
|
|
b7ed5bd832 | ||
|
|
5251b98ec4 | ||
|
|
b6dfd62b4c | ||
|
|
17f08a59ce | ||
|
|
1a0949f2e8 | ||
|
|
7a89ddd94e | ||
|
|
b21d140d6f | ||
|
|
083d94f811 | ||
|
|
c9db28a3a3 | ||
|
|
b202337c81 | ||
|
|
db435a17ac | ||
|
|
b6615ce5fe | ||
|
|
2052ed6379 | ||
|
|
edf8e09936 | ||
|
|
ecbbc7c8e8 | ||
|
|
47e9516cc2 | ||
|
|
11b3c861d9 | ||
|
|
c1118489e3 | ||
|
|
71fda54338 | ||
|
|
aec7c33155 | ||
|
|
2f86192634 | ||
|
|
36aba44b51 | ||
|
|
41ab9cf18c | ||
|
|
4e4ad669da | ||
|
|
a1b25d115a | ||
|
|
15dc340a10 | ||
|
|
b01f5765b1 | ||
|
|
530bcf2a74 | ||
|
|
f587d1d6db | ||
|
|
2af7077a0a | ||
|
|
c2fe4b5c80 | ||
| 728e67e1a5 | |||
|
|
3b2d01b8dc | ||
|
|
dc94873297 | ||
|
|
c1e8d6cd23 | ||
|
|
a456ee6196 | ||
|
|
30ea19c5b0 | ||
|
|
8a1cd0c248 | ||
|
|
09ea4744fc | ||
|
|
d886c178b6 | ||
| 8fa056e191 | |||
|
|
72866a259d | ||
|
|
7474bea895 | ||
|
|
e8fac6148a | ||
|
|
c5f4f829b3 | ||
|
|
da759427fd | ||
|
|
79e8a9738e | ||
|
|
27ac18b503 | ||
|
|
932de58185 | ||
|
|
48e65358f4 | ||
|
|
69aacebbb2 | ||
| 791fa55767 | |||
| 3b83e527f8 | |||
|
|
618a3eeec0 | ||
|
|
de53dcf6b0 | ||
|
|
8ef3bcd352 | ||
|
|
7adf511bf7 | ||
|
|
72cdf2af35 | ||
|
|
d9a0e1e120 | ||
|
|
90a1a1b325 | ||
|
|
984bea6136 | ||
|
|
083cb38e81 | ||
|
|
6d65cd2a56 | ||
|
|
223364907f | ||
|
|
d96bcd2a2b | ||
|
|
6de83febb5 | ||
|
|
aaceb4eb21 | ||
|
|
e1716e7417 | ||
|
|
f5aaef5b16 | ||
|
|
b66d524d7f | ||
|
|
d468545428 | ||
|
|
1356ef52ab | ||
|
|
67a5d99e1d | ||
|
|
31db4dc894 | ||
|
|
50a5fd3ce1 | ||
|
|
a02a367a6e | ||
|
|
33a898e359 | ||
|
|
f46e24d8f1 | ||
|
|
b2db375ecf | ||
|
|
9039fbe862 | ||
|
|
145e5c3340 | ||
|
|
ad741b86e5 | ||
|
|
a04c178ed4 | ||
|
|
584154d676 | ||
|
|
6e2c135b47 | ||
|
|
e8ecb14f64 | ||
|
|
ad29d96068 | ||
|
|
43647086fb | ||
|
|
eb07d852db | ||
|
|
7f5ab0df7f | ||
|
|
3d31421164 | ||
|
|
7b6cab626e | ||
|
|
736a63e89f | ||
|
|
a74d485d1c | ||
|
|
b7f276f849 | ||
|
|
e0be70f5e6 | ||
|
|
4ff212f2f3 | ||
|
|
af8823c508 | ||
|
|
c27aa6a114 | ||
|
|
df77572fe7 | ||
|
|
8c47024960 | ||
|
|
16a7b893e4 | ||
| 4a38f077a3 | |||
|
|
e17aa16086 | ||
|
|
316359a395 | ||
|
|
226f2adda4 | ||
|
|
d3f9b74ba1 | ||
|
|
ce999d226d | ||
| 032e2ae668 | |||
|
|
bc9a5bfc72 | ||
|
|
8e73755d80 | ||
|
|
2f3cb43807 | ||
|
|
550962f1e6 | ||
|
|
c86fb57710 | ||
|
|
daacf6ae02 | ||
|
|
066e955933 | ||
|
|
bba534be3c | ||
|
|
e473d0eb7e | ||
|
|
aab26d2e35 | ||
|
|
b9305d1fb9 | ||
|
|
f9c4700e7d | ||
|
|
239f7b8fa8 |
25
.github/workflows/sync-develop.yml
vendored
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
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'
|
||||||
12
.gitignore
vendored
@@ -36,11 +36,14 @@
|
|||||||
*.user
|
*.user
|
||||||
*.pdb
|
*.pdb
|
||||||
*.idb
|
*.idb
|
||||||
*.manifest
|
|
||||||
*.htm
|
|
||||||
*.res
|
*.res
|
||||||
*.ilk
|
*.ilk
|
||||||
*.dep
|
*.dep
|
||||||
|
*.bin
|
||||||
|
*.7z
|
||||||
|
|
||||||
|
# ResEditor files
|
||||||
|
*.aps
|
||||||
|
|
||||||
/Debug
|
/Debug
|
||||||
/Release
|
/Release
|
||||||
@@ -55,4 +58,7 @@ desktop.ini
|
|||||||
*.db
|
*.db
|
||||||
|
|
||||||
#Redist
|
#Redist
|
||||||
!Installer/Redist/*
|
!Installer/Redist/*
|
||||||
|
UpgradeLog.htm
|
||||||
|
click_output.JPEG
|
||||||
|
click_output.PNG
|
||||||
|
|||||||
BIN
B3dIcon.ico
Normal file
|
After Width: | Height: | Size: 108 KiB |
8
Blocks3D.exe.manifest
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
|
||||||
|
<dependency>
|
||||||
|
<dependentAssembly>
|
||||||
|
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/>
|
||||||
|
</dependentAssembly>
|
||||||
|
</dependency>
|
||||||
|
</assembly>
|
||||||
1940
Blocks3D.vcproj
207
Dialogs.rc
@@ -1,121 +1,86 @@
|
|||||||
// Microsoft Visual C++ generated resource script.
|
// Generated by ResEdit 1.6.6
|
||||||
//
|
// Copyright (C) 2006-2015
|
||||||
#include "resource.h"
|
// http://www.resedit.net
|
||||||
|
|
||||||
#define APSTUDIO_READONLY_SYMBOLS
|
#include <windows.h>
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
#include <commctrl.h>
|
||||||
//
|
#include <richedit.h>
|
||||||
// Generated from the TEXTINCLUDE 2 resource.
|
#include "src/include/resource.h"
|
||||||
//
|
#include "src/include/versioning.h"
|
||||||
#include "afxres.h"
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
#undef APSTUDIO_READONLY_SYMBOLS
|
|
||||||
|
//
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
// Bitmap resources
|
||||||
// Neutral resources
|
//
|
||||||
|
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
||||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEU)
|
IDB_BITMAP1 BITMAP "Parts.bmp"
|
||||||
#ifdef _WIN32
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
#pragma code_page(1252)
|
1 VERSIONINFO
|
||||||
#endif //_WIN32
|
FILEVERSION APP_GENER,APP_MAJOR,APP_MINOR,APP_PATCH
|
||||||
|
PRODUCTVERSION APP_GENER,APP_MAJOR,APP_MINOR,APP_PATCH
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
FILEOS VOS__WINDOWS32
|
||||||
//
|
FILETYPE VFT_APP
|
||||||
// Icon
|
FILESUBTYPE VFT2_UNKNOWN
|
||||||
//
|
FILEFLAGSMASK 0
|
||||||
|
FILEFLAGS 0
|
||||||
// Icon with lowest ID value placed first to ensure application icon
|
{
|
||||||
// remains consistent on all systems.
|
BLOCK "StringFileInfo"
|
||||||
IDI_ICON1 ICON "roblox_RN1_icon.ico"
|
{
|
||||||
#endif // Neutral resources
|
BLOCK "100901B5"
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
{
|
||||||
|
VALUE "Comments", ""
|
||||||
|
VALUE "CompanyName", "Blocks3D Team"
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
VALUE "FileDescription", "Blocks 3D"
|
||||||
// English (Canada) resources
|
VALUE "FileVersion", VER_STR(APP_VER_STRING)
|
||||||
|
VALUE "InternalName", "Blocks3D"
|
||||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENC)
|
VALUE "LegalCopyright", "Blocks3D Team - 2022"
|
||||||
#ifdef _WIN32
|
VALUE "LegalTrademarks", ""
|
||||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
VALUE "OriginalFilename", "Blocks3D.exe"
|
||||||
#pragma code_page(1252)
|
VALUE "PrivateBuild", ""
|
||||||
#endif //_WIN32
|
VALUE "ProductName", "Blocks3D"
|
||||||
|
VALUE "ProductVersion", VER_STR(APP_VER_STRING)
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
VALUE "SpecialBuild", ""
|
||||||
//
|
}
|
||||||
// Bitmap
|
}
|
||||||
//
|
BLOCK "VarFileInfo"
|
||||||
|
{
|
||||||
IDB_BITMAP1 BITMAP "Parts.bmp"
|
VALUE "Translation", 0x1009, 0x01B5
|
||||||
|
}
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
}
|
||||||
//
|
|
||||||
// Dialog
|
//
|
||||||
//
|
// Dialog resources
|
||||||
|
//
|
||||||
IDD_DIALOG1 DIALOGEX 0, 0, 304, 46
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
IDD_DIALOG1 DIALOG 0, 0, 295, 43
|
||||||
CAPTION "Dialog"
|
STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SETFOREGROUND | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
EXSTYLE WS_EX_WINDOWEDGE
|
||||||
BEGIN
|
CAPTION "Insert Object"
|
||||||
DEFPUSHBUTTON "OK",IDOK,247,7,50,14
|
FONT 8, "Ms Shell Dlg"
|
||||||
PUSHBUTTON "Cancel",IDCANCEL,247,24,50,14
|
{
|
||||||
EDITTEXT IDC_EDIT1,68,7,162,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT1, 35, 6, 195, 14, ES_AUTOHSCROLL, WS_EX_LEFT
|
||||||
LTEXT "Class:",-1,43,7,20,8
|
LTEXT "Class:", 0, 10, 9, 20, 9, SS_LEFT, WS_EX_LEFT
|
||||||
END
|
PUSHBUTTON "Cancel", IDCANCEL, 237, 24, 50, 14, 0, WS_EX_LEFT
|
||||||
|
DEFPUSHBUTTON "OK", IDOK, 237, 6, 50, 14, 0, WS_EX_LEFT
|
||||||
|
}
|
||||||
#ifdef APSTUDIO_INVOKED
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
//
|
|
||||||
// TEXTINCLUDE
|
//
|
||||||
//
|
// Icon resources
|
||||||
|
//
|
||||||
1 TEXTINCLUDE
|
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
||||||
BEGIN
|
IDI_ICON1 ICON "FatB3dIcon.ico"
|
||||||
"resource.h\0"
|
|
||||||
END
|
|
||||||
|
|
||||||
|
//
|
||||||
3 TEXTINCLUDE
|
// Manifest resources
|
||||||
BEGIN
|
//
|
||||||
"\r\n"
|
#ifndef _DEBUG
|
||||||
END
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
|
1 MANIFEST ".\\Blocks3D.exe.manifest"
|
||||||
#endif // APSTUDIO_INVOKED
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
//
|
|
||||||
// DESIGNINFO
|
|
||||||
//
|
|
||||||
|
|
||||||
#ifdef APSTUDIO_INVOKED
|
|
||||||
GUIDELINES DESIGNINFO
|
|
||||||
BEGIN
|
|
||||||
IDD_DIALOG1, DIALOG
|
|
||||||
BEGIN
|
|
||||||
LEFTMARGIN, 7
|
|
||||||
RIGHTMARGIN, 297
|
|
||||||
TOPMARGIN, 7
|
|
||||||
BOTTOMMARGIN, 39
|
|
||||||
END
|
|
||||||
END
|
|
||||||
#endif // APSTUDIO_INVOKED
|
|
||||||
|
|
||||||
#endif // English (Canada) resources
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef APSTUDIO_INVOKED
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
//
|
|
||||||
// Generated from the TEXTINCLUDE 3 resource.
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
#endif // not APSTUDIO_INVOKED
|
|
||||||
|
|
||||||
BIN
FatB3dIcon.ico
Normal file
|
After Width: | Height: | Size: 108 KiB |
BIN
Installer/Redist/vcredist_x86 - Copy.exe
Normal file
@@ -1,14 +1,15 @@
|
|||||||
;InnoSetupVersion=5.5.7
|
;InnoSetupVersion=5.4.3
|
||||||
|
#define AppVer GetFileVersion('..\Blocks3D.exe')
|
||||||
|
|
||||||
[Setup]
|
[Setup]
|
||||||
AppName=Blocks3D
|
AppName=Blocks3D
|
||||||
|
AppVersion=v{#AppVer}
|
||||||
AppId={{4C5DF268-0208-4CDE-A7F0-65F7E2CB5067}
|
AppId={{4C5DF268-0208-4CDE-A7F0-65F7E2CB5067}
|
||||||
AppVersion=v0_0_104_4
|
|
||||||
AppPublisherURL=http://blocks3d.com/
|
AppPublisherURL=http://blocks3d.com/
|
||||||
AppSupportURL=http://blocks3d.com/
|
AppSupportURL=http://blocks3d.com/
|
||||||
AppUpdatesURL=http://blocks3d.com/
|
AppUpdatesURL=http://blocks3d.com/
|
||||||
DefaultDirName={%localappdata}\Blocks3D
|
DefaultDirName={%localappdata}\Blocks3D
|
||||||
OutputBaseFilename=Blocks3D_Setup_{#SetupSetting("AppVersion")}
|
OutputBaseFilename=Blocks3D_Setup_v{#AppVer}
|
||||||
Compression=lzma2
|
Compression=lzma2
|
||||||
PrivilegesRequired=lowest
|
PrivilegesRequired=lowest
|
||||||
WizardImageFile=setup.bmp
|
WizardImageFile=setup.bmp
|
||||||
@@ -20,7 +21,7 @@ Type: filesandordirs; Name: "{app}"
|
|||||||
|
|
||||||
[Files]
|
[Files]
|
||||||
Source: "Redist\vcredist_x86.exe"; DestDir: "{tmp}"; Flags: ignoreversion
|
Source: "Redist\vcredist_x86.exe"; DestDir: "{tmp}"; Flags: ignoreversion
|
||||||
Source: "Redist\vcredist_x64.exe"; DestDir: "{tmp}"; Check: "IsWin64"; Flags: ignoreversion
|
;Source: "Redist\vcredist_x64.exe"; DestDir: "{tmp}"; Check: "IsWin64"; Flags: ignoreversion
|
||||||
Source: "..\content\*"; DestDir: "{app}\content"; Flags: ignoreversion recursesubdirs
|
Source: "..\content\*"; DestDir: "{app}\content"; Flags: ignoreversion recursesubdirs
|
||||||
Source: "..\SDL.DLL"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
Source: "..\SDL.DLL"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
||||||
Source: "..\Blocks3D.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
Source: "..\Blocks3D.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
||||||
@@ -30,7 +31,7 @@ Source: "..\Blocks3D.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
|||||||
|
|
||||||
[Run]
|
[Run]
|
||||||
Filename: "{tmp}\vcredist_x86.exe"; Parameters: "/q"; Tasks: instvc;
|
Filename: "{tmp}\vcredist_x86.exe"; Parameters: "/q"; Tasks: instvc;
|
||||||
Filename: "{tmp}\vcredist_x64.exe"; Parameters: "/q"; Tasks: instvc; Check: "IsWin64";
|
;Filename: "{tmp}\vcredist_x64.exe"; Parameters: "/q"; Tasks: instvc; Check: "IsWin64";
|
||||||
Filename: "iexplore.exe"; Parameters: "http://www.blocks3d.com/FirstInstall"; Description: Start playing Blocks3D; Flags: shellexec postinstall nowait skipifsilent
|
Filename: "iexplore.exe"; Parameters: "http://www.blocks3d.com/FirstInstall"; Description: Start playing Blocks3D; Flags: shellexec postinstall nowait skipifsilent
|
||||||
|
|
||||||
[Icons]
|
[Icons]
|
||||||
@@ -40,8 +41,6 @@ Name: "{group}\Blocks3D Editor"; Filename: "{app}\Blocks3D.exe"; Tasks: startscu
|
|||||||
Name: "{userdesktop}\Play Blocks3D"; Filename: "{%programfiles}\Internet Explorer\iexplore.exe"; Parameters: "http://www.blocks3d.com/Games"; IconFilename: "{app}\Blocks3D.exe"; Tasks: startscut;
|
Name: "{userdesktop}\Play Blocks3D"; Filename: "{%programfiles}\Internet Explorer\iexplore.exe"; Parameters: "http://www.blocks3d.com/Games"; IconFilename: "{app}\Blocks3D.exe"; Tasks: startscut;
|
||||||
Name: "{userdesktop}\Blocks3D Editor"; Filename: "{app}\Blocks3D.exe"; Tasks: desktopicon
|
Name: "{userdesktop}\Blocks3D Editor"; Filename: "{app}\Blocks3D.exe"; Tasks: desktopicon
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[Tasks]
|
[Tasks]
|
||||||
Name: "instvc"; Description: "Install Visual C++ Redistributable 2005 SP1 (Requires elevated permissions)";
|
Name: "instvc"; Description: "Install Visual C++ Redistributable 2005 SP1 (Requires elevated permissions)";
|
||||||
Name: "desktopicon"; Description: "Create Desktop Icons";
|
Name: "desktopicon"; Description: "Create Desktop Icons";
|
||||||
|
|||||||
51
Installer/install_script_floppy.iss
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
;InnoSetupVersion=5.4.3
|
||||||
|
#define AppVer GetFileVersion('..\Blocks3D.exe')
|
||||||
|
|
||||||
|
[Setup]
|
||||||
|
AppName=Blocks3D
|
||||||
|
AppVersion=v{#AppVer}
|
||||||
|
AppId={{4C5DF268-0208-4CDE-A7F0-65F7E2CB5067}
|
||||||
|
AppPublisherURL=http://blocks3d.com/
|
||||||
|
AppSupportURL=http://blocks3d.com/
|
||||||
|
AppUpdatesURL=http://blocks3d.com/
|
||||||
|
DefaultDirName={%localappdata}\Blocks3D
|
||||||
|
OutputBaseFilename=B3DSTP
|
||||||
|
Compression=lzma2
|
||||||
|
PrivilegesRequired=lowest
|
||||||
|
WizardImageFile=setup.bmp
|
||||||
|
DefaultGroupName=Blocks3D
|
||||||
|
DiskSpanning=yes
|
||||||
|
SlicesPerDisk=1
|
||||||
|
DiskSliceSize=1457664
|
||||||
|
|
||||||
|
|
||||||
|
[UninstallDelete]
|
||||||
|
Type: filesandordirs; Name: "{app}"
|
||||||
|
|
||||||
|
[Files]
|
||||||
|
Source: "Redist\vcredist_x86.exe"; DestDir: "{tmp}"; Flags: ignoreversion
|
||||||
|
;Source: "Redist\vcredist_x64.exe"; DestDir: "{tmp}"; Check: "IsWin64"; Flags: ignoreversion
|
||||||
|
Source: "..\content\*"; DestDir: "{app}\content"; Flags: ignoreversion recursesubdirs
|
||||||
|
Source: "..\SDL.DLL"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
||||||
|
Source: "..\Blocks3D.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
||||||
|
|
||||||
|
[Registry]
|
||||||
|
|
||||||
|
|
||||||
|
[Run]
|
||||||
|
Filename: "{tmp}\vcredist_x86.exe"; Parameters: "/q"; Tasks: instvc;
|
||||||
|
;Filename: "{tmp}\vcredist_x64.exe"; Parameters: "/q"; Tasks: instvc; Check: "IsWin64";
|
||||||
|
Filename: "iexplore.exe"; Parameters: "http://www.blocks3d.com/FirstInstall"; Description: Start playing Blocks3D; Flags: shellexec postinstall nowait skipifsilent
|
||||||
|
|
||||||
|
[Icons]
|
||||||
|
Name: "{group}\Play Blocks3D"; Filename: "{%programfiles}\Internet Explorer\iexplore.exe"; Parameters: "http://www.blocks3d.com/Games"; IconFilename: "{app}\Blocks3D.exe"; Tasks: startscut;
|
||||||
|
Name: "{group}\Blocks3D Editor"; Filename: "{app}\Blocks3D.exe"; Tasks: startscut;
|
||||||
|
|
||||||
|
Name: "{userdesktop}\Play Blocks3D"; Filename: "{%programfiles}\Internet Explorer\iexplore.exe"; Parameters: "http://www.blocks3d.com/Games"; IconFilename: "{app}\Blocks3D.exe"; Tasks: startscut;
|
||||||
|
Name: "{userdesktop}\Blocks3D Editor"; Filename: "{app}\Blocks3D.exe"; Tasks: desktopicon
|
||||||
|
|
||||||
|
[Tasks]
|
||||||
|
Name: "instvc"; Description: "Install Visual C++ Redistributable 2005 SP1 (Requires elevated permissions)";
|
||||||
|
Name: "desktopicon"; Description: "Create Desktop Icons";
|
||||||
|
Name: "startscut"; Description: "Create Start Menu Icons";
|
||||||
|
|
||||||
6
ODE Copyright.txt
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
Open Dynamics Engine
|
||||||
|
|
||||||
|
Copyright (c) 2001-2004,
|
||||||
|
Russell L. Smith.
|
||||||
|
|
||||||
|
All rights reserved.
|
||||||
6473
Physics Test/1524_doll_7place_9-26-3007.rbxl
Normal file
155680
Physics Test/1622_arkitects_place_3-24-2006.rbxl
Normal file
67987
Physics Test/1792_drummerdude952s_place_7-8-2006.rbxl
Normal file
74058
Physics Test/2006_Pirate_Ship.rbxl
Normal file
588
Physics Test/Cylinder.rbxl
Normal file
@@ -0,0 +1,588 @@
|
|||||||
|
<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>
|
||||||
586202
Physics Test/Roblox HQ.rbxl
Normal file
20133
Physics Test/phys-test-room-collapse.rbxl
Normal file
49308
Physics Test/phys-test-tower-collapse.rbxl
Normal file
41924
Physics Test/phys-test-tower-stable.rbxl
Normal file
578
Physics Test/phys_test_004.rbxl
Normal file
@@ -0,0 +1,578 @@
|
|||||||
|
<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>
|
||||||
23888
Physics Test/phys_test_005.rbxl
Normal file
660
Physics Test/phys_test_stable.rbxl
Normal file
@@ -0,0 +1,660 @@
|
|||||||
|
<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>
|
||||||
56
ThumbnailGeneratorInstance.cpp
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
#include "DataModelV2/ThumbnailGeneratorInstance.h"
|
||||||
|
#include "Application.h"
|
||||||
|
#include "Globals.h"
|
||||||
|
#include "base64.h"
|
||||||
|
#include <fstream>
|
||||||
|
|
||||||
|
ThumbnailGeneratorInstance::ThumbnailGeneratorInstance(void)
|
||||||
|
{
|
||||||
|
Instance::Instance();
|
||||||
|
name = "ThumbnailGenerator";
|
||||||
|
className = "ThumbnailGenerator";
|
||||||
|
canDelete = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
ThumbnailGeneratorInstance::~ThumbnailGeneratorInstance(void) {}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO:
|
||||||
|
* Move functions like toggleSky into their own "Lighting" instance
|
||||||
|
* Make this headless, and allow for resolutions greater than the screen resolution
|
||||||
|
*/
|
||||||
|
std::string ThumbnailGeneratorInstance::click(std::string fileType, int cx, int cy, bool hideSky)
|
||||||
|
{
|
||||||
|
if(!G3D::GImage::supportedFormat(fileType)) {
|
||||||
|
printf("%s is not a valid fileType.", fileType);
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderDevice* rd = g_usableApp->getRenderDevice();
|
||||||
|
GuiRootInstance* guiRoot = g_dataModel->getGuiRoot();
|
||||||
|
const G3D::GImage::Format format = G3D::GImage::stringToFormat(fileType);
|
||||||
|
|
||||||
|
int prevWidth = rd->width();
|
||||||
|
int prevHeight = rd->height();
|
||||||
|
G3D::GImage imgBuffer(cx, cy, 4);
|
||||||
|
G3D::BinaryOutput binOut;
|
||||||
|
|
||||||
|
guiRoot->hideGui(true);
|
||||||
|
g_usableApp->resize3DView(cx, cy);
|
||||||
|
|
||||||
|
if(hideSky)
|
||||||
|
g_dataModel->getLighting()->suppressSky(true);
|
||||||
|
|
||||||
|
g_usableApp->onGraphics(rd);
|
||||||
|
rd->screenshotPic(imgBuffer, true, hideSky);
|
||||||
|
imgBuffer.encode(format, binOut);
|
||||||
|
|
||||||
|
// Convert to Base64 string
|
||||||
|
std::string base64ImgStr = base64_encode(reinterpret_cast<const unsigned char*>(binOut.getCArray()), binOut.length(), false);
|
||||||
|
|
||||||
|
guiRoot->hideGui(false);
|
||||||
|
g_usableApp->resize3DView(prevWidth, prevHeight);
|
||||||
|
|
||||||
|
return base64ImgStr;
|
||||||
|
}
|
||||||
|
|
||||||
@@ -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="alert(window.external.ToggleHopperBin(0))">
|
<span class="container" onmousedown="toolOvr(this)" onmouseup="toolOut(this)" onmouseout="toolOut(this)" onclick="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
content/sounds/bass.wav
Normal file
BIN
content/sounds/collide.wav
Normal file
BIN
content/sounds/glassbreak.wav
Normal file
BIN
content/sounds/snap.wav
Normal file
BIN
content/sounds/splat.wav
Normal file
BIN
content/sounds/swoosh.wav
Normal file
BIN
content/sounds/victory.wav
Normal file
BIN
ode-0.6.zip
Normal file
|
Before Width: | Height: | Size: 576 B After Width: | Height: | Size: 576 B |
|
Before Width: | Height: | Size: 637 B After Width: | Height: | Size: 637 B |
BIN
oldcontent/font/lighttrek.fnt
Normal file
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 353 B After Width: | Height: | Size: 353 B |
|
Before Width: | Height: | Size: 433 B After Width: | Height: | Size: 433 B |
|
Before Width: | Height: | Size: 628 B After Width: | Height: | Size: 628 B |
|
Before Width: | Height: | Size: 595 B After Width: | Height: | Size: 595 B |
|
Before Width: | Height: | Size: 665 B After Width: | Height: | Size: 665 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 627 B After Width: | Height: | Size: 627 B |
|
Before Width: | Height: | Size: 788 B After Width: | Height: | Size: 788 B |
|
Before Width: | Height: | Size: 660 B After Width: | Height: | Size: 660 B |
|
Before Width: | Height: | Size: 552 B After Width: | Height: | Size: 552 B |
|
Before Width: | Height: | Size: 655 B After Width: | Height: | Size: 655 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 798 B After Width: | Height: | Size: 798 B |
|
Before Width: | Height: | Size: 522 B After Width: | Height: | Size: 522 B |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
2064
resource.h
@@ -7,7 +7,6 @@
|
|||||||
#include "IEBrowser.h"
|
#include "IEBrowser.h"
|
||||||
#include "Mouse.h"
|
#include "Mouse.h"
|
||||||
#include "Tool/Tool.h"
|
#include "Tool/Tool.h"
|
||||||
//#include "GuiRoot.h"
|
|
||||||
|
|
||||||
class TextButtonInstance;
|
class TextButtonInstance;
|
||||||
class ImageButtonInstance;
|
class ImageButtonInstance;
|
||||||
@@ -32,7 +31,6 @@ class Application { // : public GApp {
|
|||||||
PartInstance* makePart();
|
PartInstance* makePart();
|
||||||
void drawButtons(RenderDevice* rd);
|
void drawButtons(RenderDevice* rd);
|
||||||
void drawOutline(Vector3 from, Vector3 to, RenderDevice* rd, LightingParameters lighting, Vector3 size, Vector3 pos, CoordinateFrame c);
|
void drawOutline(Vector3 from, Vector3 to, RenderDevice* rd, LightingParameters lighting, Vector3 size, Vector3 pos, CoordinateFrame c);
|
||||||
std::vector<Instance*> getSelection();
|
|
||||||
void deleteInstance();
|
void deleteInstance();
|
||||||
void run();
|
void run();
|
||||||
void QuitApp();
|
void QuitApp();
|
||||||
@@ -49,23 +47,25 @@ class Application { // : public GApp {
|
|||||||
void setFocus(bool isFocused);
|
void setFocus(bool isFocused);
|
||||||
int getMode();
|
int getMode();
|
||||||
void unSetMode();
|
void unSetMode();
|
||||||
|
|
||||||
CameraController cameraController;
|
CameraController cameraController;
|
||||||
UserInput* userInput;
|
UserInput* userInput;
|
||||||
PropertyWindow* _propWindow;
|
PropertyWindow* _propWindow;
|
||||||
void generateShadowMap(const CoordinateFrame& lightViewMatrix) const;
|
void generateShadowMap(const CoordinateFrame& lightViewMatrix) const;
|
||||||
RenderDevice* getRenderDevice();
|
RenderDevice* getRenderDevice();
|
||||||
void selectInstance(Instance* selectedInstance,PropertyWindow* propWindow);
|
void selectInstance(Instance* selectedInstance,PropertyWindow* propWindow);
|
||||||
void setMode(int mode);
|
void setMode(int mode);
|
||||||
|
void resize3DView(int w, int h);
|
||||||
|
|
||||||
Tool * tool;
|
Tool * tool;
|
||||||
void changeTool(Tool *);
|
void changeTool(Tool *);
|
||||||
Mouse mouse;
|
Mouse mouse;
|
||||||
|
bool viewportHasFocus();
|
||||||
private:
|
private:
|
||||||
bool mouseMoveState;
|
bool mouseMoveState;
|
||||||
RenderDevice* renderDevice;
|
RenderDevice* renderDevice;
|
||||||
//void initGUI();
|
//void initGUI();
|
||||||
HWND _hWndMain;
|
HWND _hWndMain;
|
||||||
SkyRef sky;
|
|
||||||
bool quit;
|
bool quit;
|
||||||
bool mouseOnScreen;
|
bool mouseOnScreen;
|
||||||
bool rightButtonHolding;
|
bool rightButtonHolding;
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ class AudioPlayer
|
|||||||
public:
|
public:
|
||||||
AudioPlayer(void);
|
AudioPlayer(void);
|
||||||
~AudioPlayer(void);
|
~AudioPlayer(void);
|
||||||
static void playSound(std::string);
|
|
||||||
static void init();
|
static void init();
|
||||||
|
static void playSound(std::string);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ class CameraController {
|
|||||||
void panRight();
|
void panRight();
|
||||||
void tiltUp();
|
void tiltUp();
|
||||||
void tiltDown();
|
void tiltDown();
|
||||||
|
void zoomExtents();
|
||||||
void Zoom(short delta);
|
void Zoom(short delta);
|
||||||
bool onMouseWheel(int x, int y, short delta);
|
bool onMouseWheel(int x, int y, short delta);
|
||||||
GCamera* getCamera();
|
GCamera* getCamera();
|
||||||
|
|||||||
@@ -1,9 +1,19 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
// Instances
|
||||||
#include "WorkspaceInstance.h"
|
#include "WorkspaceInstance.h"
|
||||||
#include "LevelInstance.h"
|
#include "LevelInstance.h"
|
||||||
#include "PartInstance.h"
|
#include "PartInstance.h"
|
||||||
#include "rapidxml/rapidxml.hpp"
|
#include "SelectionService.h"
|
||||||
#include "GuiRootInstance.h"
|
#include "GuiRootInstance.h"
|
||||||
|
#include "ThumbnailGeneratorInstance.h"
|
||||||
|
#include "XplicitNgine/XplicitNgine.h"
|
||||||
|
#include "SoundService.h"
|
||||||
|
#include "LightingInstance.h"
|
||||||
|
#include "JointsService.h"
|
||||||
|
|
||||||
|
// Libraries
|
||||||
|
#include "rapidxml/rapidxml.hpp"
|
||||||
|
|
||||||
class GuiRootInstance;
|
class GuiRootInstance;
|
||||||
|
|
||||||
@@ -21,23 +31,27 @@ public:
|
|||||||
bool load(const char* filename,bool clearObjects);
|
bool load(const char* filename,bool clearObjects);
|
||||||
bool readXMLFileStream(std::ifstream* file);
|
bool readXMLFileStream(std::ifstream* file);
|
||||||
void drawMessage(RenderDevice*);
|
void drawMessage(RenderDevice*);
|
||||||
WorkspaceInstance* getWorkspace();
|
|
||||||
LevelInstance * getLevel();
|
// Instance getters
|
||||||
|
WorkspaceInstance* getWorkspace();
|
||||||
|
LevelInstance* getLevel();
|
||||||
|
XplicitNgine* getEngine();
|
||||||
|
ThumbnailGeneratorInstance* getThumbnailGenerator();
|
||||||
|
SoundService* getSoundService();
|
||||||
|
JointsService* getJointsService();
|
||||||
|
LightingInstance* getLighting();
|
||||||
|
|
||||||
std::string message;
|
std::string message;
|
||||||
std::string _loadedFileName;
|
std::string _loadedFileName;
|
||||||
bool showMessage;
|
bool showMessage;
|
||||||
G3D::GFontRef font;
|
G3D::GFontRef font;
|
||||||
GuiRootInstance* getGuiRoot();
|
GuiRootInstance* getGuiRoot();
|
||||||
//float mousex;
|
SelectionService* getSelectionService();
|
||||||
//float mousey;
|
|
||||||
//Vector2 getMousePos();
|
|
||||||
//void setMousePos(int x,int y);
|
|
||||||
//void setMousePos(Vector2 pos);
|
|
||||||
//bool mouseButton1Down;
|
|
||||||
PartInstance* makePart();
|
PartInstance* makePart();
|
||||||
void clearLevel();
|
void clearLevel();
|
||||||
void toggleRun();
|
void toggleRun();
|
||||||
bool isRunning();
|
bool isRunning();
|
||||||
|
void resetEngine();
|
||||||
#if _DEBUG
|
#if _DEBUG
|
||||||
void modXMLLevel(float modY);
|
void modXMLLevel(float modY);
|
||||||
#endif
|
#endif
|
||||||
@@ -50,8 +64,17 @@ private:
|
|||||||
std::string _errMsg;
|
std::string _errMsg;
|
||||||
bool _legacyLoad;
|
bool _legacyLoad;
|
||||||
float _modY;
|
float _modY;
|
||||||
|
|
||||||
|
// Instances
|
||||||
WorkspaceInstance* workspace;
|
WorkspaceInstance* workspace;
|
||||||
LevelInstance * level;
|
LevelInstance* level;
|
||||||
GuiRootInstance* guiRoot;
|
GuiRootInstance* guiRoot;
|
||||||
|
SelectionService* selectionService;
|
||||||
|
ThumbnailGeneratorInstance* thumbnailGenerator;
|
||||||
|
XplicitNgine* xplicitNgine;
|
||||||
|
SoundService* soundService;
|
||||||
|
LightingInstance* lightingInstance;
|
||||||
|
JointsService* jointsService;
|
||||||
bool running;
|
bool running;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -18,7 +18,9 @@ public:
|
|||||||
void update();
|
void update();
|
||||||
bool mouseInGUI(G3D::RenderDevice* renderDevice,int x,int y);
|
bool mouseInGUI(G3D::RenderDevice* renderDevice,int x,int y);
|
||||||
void onMouseLeftUp(G3D::RenderDevice* renderDevice, int x,int y);
|
void onMouseLeftUp(G3D::RenderDevice* renderDevice, int x,int y);
|
||||||
|
void hideGui(bool doHide);
|
||||||
private:
|
private:
|
||||||
std::string _message;
|
std::string _message;
|
||||||
G3D::RealTime _messageTime;
|
G3D::RealTime _messageTime;
|
||||||
|
bool _hideGui;
|
||||||
};
|
};
|
||||||
@@ -2,7 +2,6 @@
|
|||||||
#include <G3DAll.h>
|
#include <G3DAll.h>
|
||||||
#include "propertyGrid.h"
|
#include "propertyGrid.h"
|
||||||
#include "map"
|
#include "map"
|
||||||
//#include "Properties/BoolProperty.h"
|
|
||||||
|
|
||||||
class Instance
|
class Instance
|
||||||
{
|
{
|
||||||
@@ -13,9 +12,11 @@ public:
|
|||||||
virtual ~Instance(void);
|
virtual ~Instance(void);
|
||||||
std::string name;
|
std::string name;
|
||||||
virtual void render(RenderDevice*);
|
virtual void render(RenderDevice*);
|
||||||
|
virtual void renderName(RenderDevice*);
|
||||||
virtual void update();
|
virtual void update();
|
||||||
std::vector<Instance*> children; // All children.
|
std::vector<Instance*> children; // All children.
|
||||||
std::string getClassName();
|
std::string getClassName();
|
||||||
|
bool Instance::isA(std::string name);
|
||||||
Instance* findFirstChild(std::string);
|
Instance* findFirstChild(std::string);
|
||||||
std::vector<Instance* > getChildren();
|
std::vector<Instance* > getChildren();
|
||||||
std::vector<Instance* > getAllChildren();
|
std::vector<Instance* > getAllChildren();
|
||||||
@@ -25,6 +26,7 @@ public:
|
|||||||
void removeChild(Instance*);
|
void removeChild(Instance*);
|
||||||
void clearChildren();
|
void clearChildren();
|
||||||
Instance* getParent();
|
Instance* getParent();
|
||||||
|
void remove();
|
||||||
virtual Instance* clone() const { return new Instance(*this); }
|
virtual Instance* clone() const { return new Instance(*this); }
|
||||||
virtual std::vector<PROPGRIDITEM> getProperties();
|
virtual std::vector<PROPGRIDITEM> getProperties();
|
||||||
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
|
|||||||
15
src/include/DataModelV2/JointsService.h
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Instance.h"
|
||||||
|
#include "PartInstance.h"
|
||||||
|
|
||||||
|
class JointsService:
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
JointsService(void);
|
||||||
|
~JointsService(void);
|
||||||
|
void createSnap(PartInstance* Part1, PartInstance* Part2);
|
||||||
|
void destroyPartSnap(PartInstance* Part);
|
||||||
|
void JointsService::solvePartSnap(PartInstance* Part, PartInstance* Part2);
|
||||||
|
void JointsService::solveWorkspaceSnaps();
|
||||||
|
};
|
||||||
@@ -7,10 +7,19 @@ class LevelInstance :
|
|||||||
public:
|
public:
|
||||||
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);
|
||||||
};
|
};
|
||||||
|
|||||||
43
src/include/DataModelV2/LightingInstance.h
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Instance.h"
|
||||||
|
|
||||||
|
class LightingInstance :
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
LightingInstance(void);
|
||||||
|
~LightingInstance(void);
|
||||||
|
|
||||||
|
// Getters
|
||||||
|
G3D::Color3 getTopAmbient();
|
||||||
|
G3D::Color3 getBottomAmbient();
|
||||||
|
G3D::Color3 getSpotLight();
|
||||||
|
G3D::Color4 getClearColor();
|
||||||
|
G3D::SkyRef getSky();
|
||||||
|
G3D::LightingParameters getLightingParameters();
|
||||||
|
|
||||||
|
// Setters
|
||||||
|
void setTopAmbient(G3D::Color3 newValue);
|
||||||
|
void setBottomAmbient(G3D::Color3 newValue);
|
||||||
|
void setSpotLight(G3D::Color3 newValue);
|
||||||
|
void setClearColor(G3D::Color4 clearColor);
|
||||||
|
|
||||||
|
// Functions
|
||||||
|
void drawSky();
|
||||||
|
void suppressSky(bool doSuppress);
|
||||||
|
void update();
|
||||||
|
void drawEffects();
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
|
std::vector<PROPGRIDITEM> getProperties();
|
||||||
|
|
||||||
|
private:
|
||||||
|
G3D::Color3 topAmbient;
|
||||||
|
G3D::Color3 bottomAmbient;
|
||||||
|
G3D::Color3 spotLight;
|
||||||
|
G3D::Color4 clearColor;
|
||||||
|
G3D::SkyRef sky;
|
||||||
|
G3D::LightingParameters lighting;
|
||||||
|
bool _hideSky;
|
||||||
|
};
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "instance.h"
|
#include "instance.h"
|
||||||
#include "enum.h"
|
#include "enum.h"
|
||||||
|
#include <ode/ode.h>
|
||||||
|
|
||||||
class PVInstance :
|
class PVInstance :
|
||||||
public Instance
|
public Instance
|
||||||
|
|||||||
@@ -16,7 +16,8 @@ public:
|
|||||||
//Rendering
|
//Rendering
|
||||||
virtual void PartInstance::postRender(RenderDevice* rd);
|
virtual void PartInstance::postRender(RenderDevice* rd);
|
||||||
virtual void render(RenderDevice*);
|
virtual void render(RenderDevice*);
|
||||||
|
virtual void renderName(RenderDevice*);
|
||||||
|
|
||||||
//Surfaces
|
//Surfaces
|
||||||
Enum::SurfaceType::Value top;
|
Enum::SurfaceType::Value top;
|
||||||
Enum::SurfaceType::Value front;
|
Enum::SurfaceType::Value front;
|
||||||
@@ -24,12 +25,19 @@ public:
|
|||||||
Enum::SurfaceType::Value back;
|
Enum::SurfaceType::Value back;
|
||||||
Enum::SurfaceType::Value left;
|
Enum::SurfaceType::Value left;
|
||||||
Enum::SurfaceType::Value bottom;
|
Enum::SurfaceType::Value bottom;
|
||||||
|
|
||||||
|
//Shapes
|
||||||
Enum::Shape::Value shape;
|
Enum::Shape::Value shape;
|
||||||
|
|
||||||
|
//OnTocuh
|
||||||
|
Enum::ActionType::Value OnTouchAction;
|
||||||
|
Enum::Sound::Value OnTouchSound;
|
||||||
|
|
||||||
//Variables
|
//Variables
|
||||||
Color3 color;
|
Color3 color;
|
||||||
bool canCollide;
|
bool canCollide;
|
||||||
bool anchored;
|
dBodyID physBody;
|
||||||
|
dGeomID physGeom[3];
|
||||||
|
|
||||||
//Getters
|
//Getters
|
||||||
Vector3 getPosition();
|
Vector3 getPosition();
|
||||||
@@ -41,30 +49,56 @@ public:
|
|||||||
Box getScaledBox();
|
Box getScaledBox();
|
||||||
CoordinateFrame getCFrame();
|
CoordinateFrame getCFrame();
|
||||||
|
|
||||||
|
//OnTouch Getters
|
||||||
|
bool isSingleShot();
|
||||||
|
int getTouchesToTrigger();
|
||||||
|
int getUniqueObjectsToTrigger();
|
||||||
|
int getChangeScore();
|
||||||
|
float getChangeTimer();
|
||||||
|
|
||||||
//Setters
|
//Setters
|
||||||
void setParent(Instance* parent);
|
void setParent(Instance* parent);
|
||||||
void setPosition(Vector3);
|
void setPosition(Vector3);
|
||||||
void setVelocity(Vector3);
|
void setVelocity(Vector3);
|
||||||
void setRotVelocity(Vector3);
|
void setRotVelocity(Vector3);
|
||||||
void setCFrame(CoordinateFrame);
|
void setCFrame(CoordinateFrame);
|
||||||
|
void setCFrameNoSync(CoordinateFrame);
|
||||||
void setSize(Vector3);
|
void setSize(Vector3);
|
||||||
void setShape(Enum::Shape::Value shape);
|
void setShape(Enum::Shape::Value shape);
|
||||||
void setChanged();
|
void setChanged();
|
||||||
void setSurface(int face, Enum::SurfaceType::Value surface);
|
void setSurface(int face, Enum::SurfaceType::Value surface);
|
||||||
|
void setAnchored(bool anchored);
|
||||||
|
bool isAnchored();
|
||||||
|
float getMass();
|
||||||
|
bool isDragging();
|
||||||
|
void setDragging(bool value);
|
||||||
|
|
||||||
//Collision
|
//Collision
|
||||||
bool collides(PartInstance * part);
|
bool collides(PartInstance * part);
|
||||||
bool collides(Box);
|
bool collides(Box);
|
||||||
|
|
||||||
|
// onTouch
|
||||||
|
void onTouch();
|
||||||
|
|
||||||
//Properties
|
//Properties
|
||||||
virtual std::vector<PROPGRIDITEM> getProperties();
|
virtual std::vector<PROPGRIDITEM> getProperties();
|
||||||
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
private:
|
private:
|
||||||
|
bool anchored;
|
||||||
Vector3 position;
|
Vector3 position;
|
||||||
Vector3 size;
|
Vector3 size;
|
||||||
Vector3 velocity;
|
Vector3 velocity;
|
||||||
Vector3 rotVelocity;
|
Vector3 rotVelocity;
|
||||||
bool changed;
|
bool changed;
|
||||||
|
bool dragging;
|
||||||
Box itemBox;
|
Box itemBox;
|
||||||
GLuint glList;
|
GLuint glList;
|
||||||
};
|
|
||||||
|
// OnTouch
|
||||||
|
bool singleShot;
|
||||||
|
int touchesToTrigger;
|
||||||
|
int uniqueObjectsToTrigger;
|
||||||
|
int changeScore;
|
||||||
|
float changeTimer;
|
||||||
|
bool _touchedOnce;
|
||||||
|
};
|
||||||
22
src/include/DataModelV2/SelectionService.h
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Instance.h"
|
||||||
|
#include "PropertyWindow.h"
|
||||||
|
|
||||||
|
class SelectionService : public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SelectionService(void);
|
||||||
|
~SelectionService(void);
|
||||||
|
SelectionService(const SelectionService &oinst);
|
||||||
|
std::vector<Instance *> getSelection();
|
||||||
|
void clearSelection();
|
||||||
|
bool isSelected(Instance * instance);
|
||||||
|
void addSelected(Instance * instance);
|
||||||
|
void removeSelected(Instance * instance);
|
||||||
|
void addSelected(const std::vector<Instance *> &instances);
|
||||||
|
void setPropertyWindow(PropertyWindow * propertyWindow);
|
||||||
|
void render(RenderDevice * rd);
|
||||||
|
private:
|
||||||
|
std::vector<Instance *> selection;
|
||||||
|
PropertyWindow * propertyWindow;
|
||||||
|
};
|
||||||
14
src/include/DataModelV2/SnapInstance.h
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Instance.h"
|
||||||
|
#include "PartInstance.h"
|
||||||
|
|
||||||
|
class SnapInstance:
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SnapInstance(PartInstance* Part1, PartInstance* Part2);
|
||||||
|
~SnapInstance(void);
|
||||||
|
PartInstance* jPart1;
|
||||||
|
PartInstance* jPart2;
|
||||||
|
dJointID JointID;
|
||||||
|
};
|
||||||
30
src/include/DataModelV2/SoundInstance.h
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Instance.h"
|
||||||
|
|
||||||
|
class SoundInstance :
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SoundInstance(void);
|
||||||
|
~SoundInstance(void);
|
||||||
|
|
||||||
|
// Getters
|
||||||
|
float getSoundVolume();
|
||||||
|
std::string getSoundId();
|
||||||
|
bool isPlayedOnRemove();
|
||||||
|
bool isLooped();
|
||||||
|
|
||||||
|
// Setters
|
||||||
|
void setSoundVolume(float newVolume);
|
||||||
|
void setSoundId(std::string newSoundId);
|
||||||
|
void setIsPlayedOnRemove(bool isPlayed);
|
||||||
|
void setIsLooped(bool isLooped);
|
||||||
|
|
||||||
|
// Functions
|
||||||
|
void play();
|
||||||
|
private:
|
||||||
|
float soundVolume;
|
||||||
|
std::string soundId;
|
||||||
|
bool playOnRemove;
|
||||||
|
bool looped;
|
||||||
|
};
|
||||||
16
src/include/DataModelV2/SoundService.h
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Instance.h"
|
||||||
|
#include "SoundInstance.h"
|
||||||
|
|
||||||
|
class SoundService :
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SoundService(void);
|
||||||
|
~SoundService(void);
|
||||||
|
|
||||||
|
float getMusicVolume();
|
||||||
|
void playSound(Instance* sound);
|
||||||
|
private:
|
||||||
|
float musicVolume;
|
||||||
|
};
|
||||||
14
src/include/DataModelV2/ThumbnailGeneratorInstance.h
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "instance.h"
|
||||||
|
|
||||||
|
class ThumbnailGeneratorInstance :
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// Constructor / Destructor
|
||||||
|
ThumbnailGeneratorInstance(void);
|
||||||
|
~ThumbnailGeneratorInstance(void);
|
||||||
|
|
||||||
|
// Functions
|
||||||
|
std::string click(std::string fileType, int cx, int cy, bool hideSky);
|
||||||
|
};
|
||||||
@@ -9,5 +9,6 @@ public:
|
|||||||
WorkspaceInstance(void);
|
WorkspaceInstance(void);
|
||||||
~WorkspaceInstance(void);
|
~WorkspaceInstance(void);
|
||||||
void clearChildren();
|
void clearChildren();
|
||||||
|
void zoomToExtents();
|
||||||
std::vector<PartInstance *> partObjects;
|
std::vector<PartInstance *> partObjects;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -20,4 +20,24 @@ 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
|
||||||
|
};
|
||||||
|
}
|
||||||
|
namespace Sound
|
||||||
|
{
|
||||||
|
enum Value {
|
||||||
|
NoSound = 0, Victory = 1, Boing = 2, Bomb = 3,
|
||||||
|
Ping = 4, Break = 5, Splat = 6, Swoosh = 7,
|
||||||
|
Snap = 8, Page = 9
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "DataModelV2/DataModelInstance.h"
|
#include "DataModelV2/DataModelInstance.h"
|
||||||
|
#include "XplicitNgine/XplicitNgine.h"
|
||||||
|
|
||||||
class Application;
|
class Application;
|
||||||
|
|
||||||
@@ -17,18 +17,18 @@ public:
|
|||||||
static const int major;
|
static const int major;
|
||||||
static const int minor;
|
static const int minor;
|
||||||
static const int patch;
|
static const int patch;
|
||||||
static G3D::TextureRef surface;
|
|
||||||
static int surfaceId;
|
|
||||||
static const std::string g_appName;
|
static const std::string g_appName;
|
||||||
static COLORREF g_acrCustClr[16]; //Will be dynamic later
|
static COLORREF g_acrCustClr[16]; //Will be dynamic later
|
||||||
static HWND mainHwnd;
|
static HWND mainHwnd;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern std::vector<Instance*> postRenderStack;
|
extern std::vector<Instance*> postRenderStack;
|
||||||
extern std::vector<Instance*> g_selectedInstances;
|
|
||||||
extern bool running;
|
extern bool running;
|
||||||
extern DataModelInstance* g_dataModel;
|
extern DataModelInstance* g_dataModel;
|
||||||
|
extern XplicitNgine* g_xplicitNgine;
|
||||||
extern Application* g_usableApp;
|
extern Application* g_usableApp;
|
||||||
|
extern SkyRef g_sky;
|
||||||
|
extern RenderDevice g_renderDevice;
|
||||||
|
|
||||||
extern GFontRef g_fntdominant;
|
extern GFontRef g_fntdominant;
|
||||||
extern GFontRef g_fntlighttrek;
|
extern GFontRef g_fntlighttrek;
|
||||||
|
|||||||
@@ -27,8 +27,10 @@ public:
|
|||||||
bool isMouseOnScreen();
|
bool isMouseOnScreen();
|
||||||
bool isMouseDown();
|
bool isMouseDown();
|
||||||
void setMouseDown(bool mouseDown);
|
void setMouseDown(bool mouseDown);
|
||||||
G3D::Ray * getRay();
|
G3D::Ray getRay();
|
||||||
G3D::Ray getLastRay();
|
G3D::Ray getLastRay();
|
||||||
|
G3D::Plane getPlane();
|
||||||
|
G3D::Plane getInversePlane();
|
||||||
private:
|
private:
|
||||||
bool mouseDown;
|
bool mouseDown;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,13 +5,14 @@ class PropertyWindow {
|
|||||||
public:
|
public:
|
||||||
PropertyWindow(int x, int y, int sx, int sy, HMODULE hThisInstance);
|
PropertyWindow(int x, int y, int sx, int sy, HMODULE hThisInstance);
|
||||||
bool onCreate(int x, int y, int sx, int sy, HMODULE hThisInstance);
|
bool onCreate(int x, int y, int sx, int sy, HMODULE hThisInstance);
|
||||||
void UpdateSelected(Instance *);
|
void UpdateSelected(std::vector<Instance *> selection);
|
||||||
void ClearProperties();
|
void ClearProperties();
|
||||||
void onResize();
|
void onResize();
|
||||||
void refreshExplorer(Instance* selectedInstance);
|
void refreshExplorer(std::vector<Instance *> selection);
|
||||||
HWND _hwndProp;
|
HWND _hwndProp;
|
||||||
private:
|
private:
|
||||||
HWND _propGrid;
|
HWND _propGrid;
|
||||||
HWND _explorerComboBox;
|
HWND _explorerComboBox;
|
||||||
void _resize();
|
void _resize();
|
||||||
|
void clearExplorer();
|
||||||
};
|
};
|
||||||
@@ -13,6 +13,7 @@ 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 °ree);
|
||||||
private:
|
private:
|
||||||
bool lctrlDown;
|
bool lctrlDown;
|
||||||
bool rctrlDown;
|
bool rctrlDown;
|
||||||
@@ -20,4 +21,5 @@ private:
|
|||||||
int mouseDownStarty;
|
int mouseDownStarty;
|
||||||
bool dragging;
|
bool dragging;
|
||||||
bool mouseDown;
|
bool mouseDown;
|
||||||
|
Vector3 draggingPartOffset;
|
||||||
};
|
};
|
||||||
|
|||||||
24
src/include/Tool/DraggerTool.h
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "ArrowTool.h"
|
||||||
|
|
||||||
|
class DraggerTool :
|
||||||
|
public ArrowTool
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
DraggerTool(void);
|
||||||
|
~DraggerTool(void);
|
||||||
|
void onButton1MouseDown(Mouse);
|
||||||
|
void onButton1MouseUp(Mouse);
|
||||||
|
void onMouseMoved(Mouse mouse);
|
||||||
|
void onSelect(Mouse mouse);
|
||||||
|
void onKeyDown(int key);
|
||||||
|
void onKeyUp(int key);
|
||||||
|
void render(RenderDevice * rd, Mouse mouse);
|
||||||
|
private:
|
||||||
|
void createHandles();
|
||||||
|
void grabHandle(Mouse mouse);
|
||||||
|
bool hasHandles;
|
||||||
|
int handleGrabbed;
|
||||||
|
Vector3 center;
|
||||||
|
Sphere handles[6];
|
||||||
|
};
|
||||||
@@ -26,6 +26,7 @@ public:
|
|||||||
virtual void onMouseScroll(Mouse);//Kinda
|
virtual void onMouseScroll(Mouse);//Kinda
|
||||||
virtual void onKeyDown(int);//yes
|
virtual void onKeyDown(int);//yes
|
||||||
virtual void onKeyUp(int);//yes
|
virtual void onKeyUp(int);//yes
|
||||||
|
virtual void render(RenderDevice * rd, Mouse mouse);//yes
|
||||||
//virtual int getCursorId();//yes
|
//virtual int getCursorId();//yes
|
||||||
protected:
|
protected:
|
||||||
//virtual void setCursor(std::string);
|
//virtual void setCursor(std::string);
|
||||||
|
|||||||
11
src/include/ToolEnum.h
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace Enum
|
||||||
|
{
|
||||||
|
namespace Hopper
|
||||||
|
{
|
||||||
|
enum Value {
|
||||||
|
GameTool = 0, Grab = 1, Clone = 2, Hammer = 3, Slingshot = 4, Rocket = 5, Laser = 6
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
26
src/include/VS2005CompatShim.h
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
#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
|
||||||
22
src/include/XplicitNgine/XplicitNgine.h
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <ode/ode.h>
|
||||||
|
#include "DatamodelV2/Instance.h"
|
||||||
|
#include "DatamodelV2/PartInstance.h"
|
||||||
|
|
||||||
|
class XplicitNgine : public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XplicitNgine();
|
||||||
|
~XplicitNgine();
|
||||||
|
dWorldID physWorld;
|
||||||
|
dSpaceID physSpace;
|
||||||
|
dJointGroupID contactgroup;
|
||||||
|
|
||||||
|
void step(float stepSize);
|
||||||
|
void createBody(PartInstance* partInstance);
|
||||||
|
void deleteBody(PartInstance* partInstance);
|
||||||
|
void updateBody(PartInstance* partInstance);
|
||||||
|
void resetBody(PartInstance* partInstance);
|
||||||
|
dJointID createJoint(PartInstance *part1, PartInstance *part2);
|
||||||
|
void destroyJoints(PartInstance *part);
|
||||||
|
};
|
||||||
35
src/include/base64.h
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
//
|
||||||
|
// base64 encoding and decoding with C++.
|
||||||
|
// Version: 2.rc.08 (release candidate)
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef BASE64_H_C0CE2A47_D10E_42C9_A27C_C883944E704A
|
||||||
|
#define BASE64_H_C0CE2A47_D10E_42C9_A27C_C883944E704A
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
#if __cplusplus >= 201703L
|
||||||
|
#include <string_view>
|
||||||
|
#endif // __cplusplus >= 201703L
|
||||||
|
|
||||||
|
std::string base64_encode (std::string const& s, bool url = false);
|
||||||
|
std::string base64_encode_pem (std::string const& s);
|
||||||
|
std::string base64_encode_mime(std::string const& s);
|
||||||
|
|
||||||
|
std::string base64_decode(std::string const& s, bool remove_linebreaks = false);
|
||||||
|
std::string base64_encode(unsigned char const*, size_t len, bool url = false);
|
||||||
|
|
||||||
|
#if __cplusplus >= 201703L
|
||||||
|
//
|
||||||
|
// Interface with std::string_view rather than const std::string&
|
||||||
|
// Requires C++17
|
||||||
|
// Provided by Yannic Bonenberger (https://github.com/Yannic)
|
||||||
|
//
|
||||||
|
std::string base64_encode (std::string_view s, bool url = false);
|
||||||
|
std::string base64_encode_pem (std::string_view s);
|
||||||
|
std::string base64_encode_mime(std::string_view s);
|
||||||
|
|
||||||
|
std::string base64_decode(std::string_view s, bool remove_linebreaks = false);
|
||||||
|
#endif // __cplusplus >= 201703L
|
||||||
|
|
||||||
|
#endif /* BASE64_H_C0CE2A47_D10E_42C9_A27C_C883944E704A */
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
#define IDC_PROPERTYGRID 2000
|
#define IDC_PROPERTYGRID 2000
|
||||||
#define IDC_STATIC 2
|
#define IDC_STATIC 2
|
||||||
|
|
||||||
#define IDE_EDIT 105
|
#define IDC_EDIT1 105
|
||||||
#define IDI_ICON1 102
|
#define IDI_ICON1 102
|
||||||
#define IDB_BITMAP1 103
|
#define IDB_BITMAP1 103
|
||||||
#define IDD_DIALOG1 104
|
#define IDD_DIALOG1 104
|
||||||
|
|||||||
23
src/include/versioning.h
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
#ifndef APP_GENER
|
||||||
|
|
||||||
|
#define SNAPSHOT_VERSION
|
||||||
|
|
||||||
|
#define APP_GENER 0
|
||||||
|
#define APP_MAJOR 0
|
||||||
|
#define APP_MINOR 108
|
||||||
|
#define APP_PATCH 0
|
||||||
|
#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
|
||||||