Compare commits
1 Commits
feature/pr
...
optimizati
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ae174c1fdc |
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -1 +0,0 @@
|
|||||||
* text=false
|
|
||||||
25
.github/workflows/sync-develop.yml
vendored
25
.github/workflows/sync-develop.yml
vendored
@@ -1,25 +0,0 @@
|
|||||||
name: Sync Back to Develop
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
sync-branches:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
name: Syncing branches
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Set up Node
|
|
||||||
uses: actions/setup-node@v1
|
|
||||||
with:
|
|
||||||
node-version: 12
|
|
||||||
- name: Opening pull request
|
|
||||||
id: pull
|
|
||||||
uses: tretuna/sync-branches@1.2.0
|
|
||||||
with:
|
|
||||||
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
|
||||||
FROM_BRANCH: 'master'
|
|
||||||
TO_BRANCH: 'develop'
|
|
||||||
15
.gitignore
vendored
15
.gitignore
vendored
@@ -36,14 +36,11 @@
|
|||||||
*.user
|
*.user
|
||||||
*.pdb
|
*.pdb
|
||||||
*.idb
|
*.idb
|
||||||
|
*.manifest
|
||||||
|
*.htm
|
||||||
*.res
|
*.res
|
||||||
*.ilk
|
*.ilk
|
||||||
*.dep
|
*.dep
|
||||||
*.bin
|
|
||||||
*.7z
|
|
||||||
|
|
||||||
# ResEditor files
|
|
||||||
*.aps
|
|
||||||
|
|
||||||
/Debug
|
/Debug
|
||||||
/Release
|
/Release
|
||||||
@@ -55,10 +52,6 @@ G3DTest.suo
|
|||||||
G3DTest.suo
|
G3DTest.suo
|
||||||
stderr.txt
|
stderr.txt
|
||||||
desktop.ini
|
desktop.ini
|
||||||
|
main.cpp
|
||||||
*.db
|
*.db
|
||||||
|
G3DTest.sln
|
||||||
#Redist
|
|
||||||
!Installer/Redist/*
|
|
||||||
UpgradeLog.htm
|
|
||||||
click_output.JPEG
|
|
||||||
click_output.PNG
|
|
||||||
|
|||||||
953
Application.cpp
Normal file
953
Application.cpp
Normal file
@@ -0,0 +1,953 @@
|
|||||||
|
#include <G3DAll.h>
|
||||||
|
#include <initguid.h>
|
||||||
|
#include <iomanip>
|
||||||
|
#include "Instance.h"
|
||||||
|
#include "resource.h"
|
||||||
|
#include "PartInstance.h"
|
||||||
|
#include "TextButtonInstance.h"
|
||||||
|
#include "ImageButtonInstance.h"
|
||||||
|
#include "DataModelInstance.h"
|
||||||
|
#include "CameraController.h"
|
||||||
|
#include "AudioPlayer.h"
|
||||||
|
#include "Globals.h"
|
||||||
|
#include "Application.h"
|
||||||
|
#include "win32Defines.h"
|
||||||
|
#include "WindowFunctions.h"
|
||||||
|
#include <limits.h>
|
||||||
|
#include <mshtml.h>
|
||||||
|
#include <exdisp.h>
|
||||||
|
#include <vector>
|
||||||
|
#include <string>
|
||||||
|
#include "ax.h"
|
||||||
|
#include <cguid.h>
|
||||||
|
#include "IEBrowser.h"
|
||||||
|
#include "PropertyWindow.h"
|
||||||
|
#include <commctrl.h>
|
||||||
|
#include "StringFunctions.h"
|
||||||
|
#include "GuiRoot.h"
|
||||||
|
|
||||||
|
#include "GUDButtonListener.h"
|
||||||
|
#include "ModeSelectionListener.h"
|
||||||
|
#include "DeleteListener.h"
|
||||||
|
#include "CameraButtonListener.h"
|
||||||
|
#include "RotateButtonListener.h"
|
||||||
|
|
||||||
|
Ray testRay;
|
||||||
|
static int cursorid = 0;
|
||||||
|
static int cursorOvrid = 0;
|
||||||
|
static int currentcursorid = 0;
|
||||||
|
static G3D::TextureRef cursor = NULL;
|
||||||
|
static G3D::TextureRef cursorOvr = NULL;
|
||||||
|
static bool mouseMovedBeginMotion = false;
|
||||||
|
static POINT oldGlobalMouse;
|
||||||
|
Vector2 oldMouse = Vector2(0,0);
|
||||||
|
float moveRate = 0.5;
|
||||||
|
|
||||||
|
void Application::clearInstances()
|
||||||
|
{
|
||||||
|
delete _dataModel;
|
||||||
|
}
|
||||||
|
|
||||||
|
PartInstance* Application::makePart()
|
||||||
|
{
|
||||||
|
PartInstance* part = new PartInstance();
|
||||||
|
return part;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::setFocus(bool focus)
|
||||||
|
{
|
||||||
|
if(_propWindow != NULL)
|
||||||
|
if(focus)
|
||||||
|
{
|
||||||
|
ShowWindow(_propWindow->_hwndProp, SW_SHOW);
|
||||||
|
SetWindowPos(_propWindow->_hwndProp, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetWindowPos(_propWindow->_hwndProp, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Application::Application(HWND parentWindow) : _propWindow(NULL) { //: GApp(settings,window) {
|
||||||
|
|
||||||
|
|
||||||
|
std::string tempPath = ((std::string)getenv("temp")) + "/"+g_PlaceholderName;
|
||||||
|
CreateDirectory(tempPath.c_str(), NULL);
|
||||||
|
|
||||||
|
_hWndMain = parentWindow;
|
||||||
|
|
||||||
|
HMODULE hThisInstance = GetModuleHandle(NULL);
|
||||||
|
|
||||||
|
_hwndToolbox = CreateWindowEx(
|
||||||
|
WS_EX_ACCEPTFILES,
|
||||||
|
"AX",
|
||||||
|
"{8856F961-340A-11D0-A96B-00C04FD705A2}",
|
||||||
|
WS_CHILD | WS_VISIBLE,
|
||||||
|
0,
|
||||||
|
560,
|
||||||
|
800,
|
||||||
|
60,
|
||||||
|
_hWndMain, // parent
|
||||||
|
NULL, // menu
|
||||||
|
hThisInstance,
|
||||||
|
NULL
|
||||||
|
);
|
||||||
|
|
||||||
|
_hwndRenderer = CreateWindowEx(
|
||||||
|
WS_EX_ACCEPTFILES,
|
||||||
|
"G3DWindow",
|
||||||
|
"3D",
|
||||||
|
WS_CHILD,
|
||||||
|
CW_USEDEFAULT,
|
||||||
|
CW_USEDEFAULT,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
_hWndMain, // parent
|
||||||
|
NULL, // menu
|
||||||
|
hThisInstance,
|
||||||
|
NULL
|
||||||
|
);
|
||||||
|
_settings.window.resizable = true;
|
||||||
|
_settings.writeLicenseFile = false;
|
||||||
|
_settings.logFilename = tempPath + "/g3dlog.txt";
|
||||||
|
_settings.window.center = true;
|
||||||
|
Win32Window* window = Win32Window::create(_settings.window,_hwndRenderer);
|
||||||
|
ShowWindow(_hwndRenderer, SW_SHOW);
|
||||||
|
ShowWindow(_hWndMain, SW_SHOW);
|
||||||
|
|
||||||
|
quit=false;
|
||||||
|
rightButtonHolding=false;
|
||||||
|
mouseOnScreen=false;
|
||||||
|
// GApp replacement
|
||||||
|
renderDevice = new RenderDevice();
|
||||||
|
if (window != NULL) {
|
||||||
|
renderDevice->init(window, NULL);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
MessageBox(NULL,"Window not found!","Error",MB_OK | MB_ICONSTOP);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
_window = renderDevice->window();
|
||||||
|
_window->makeCurrent();
|
||||||
|
|
||||||
|
SetWindowLongPtr(_hWndMain,GWL_USERDATA,(LONG)this);
|
||||||
|
SetWindowLongPtr(_hwndRenderer,GWL_USERDATA,(LONG)this);
|
||||||
|
_propWindow = new PropertyWindow(0, 0, 200, 640, hThisInstance);
|
||||||
|
IEBrowser* webBrowser = new IEBrowser(_hwndToolbox);
|
||||||
|
webBrowser->navigateSyncURL(L"http://androdome.com/g3d/toolbox/");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Application::deleteInstance()
|
||||||
|
{
|
||||||
|
if(g_selectedInstances.size() > 0)
|
||||||
|
{
|
||||||
|
size_t undeletable = 0;
|
||||||
|
while(g_selectedInstances.size() > undeletable)
|
||||||
|
{
|
||||||
|
if(g_selectedInstances.at(0)->canDelete)
|
||||||
|
{
|
||||||
|
AudioPlayer::playSound(GetFileInPath("/content/sounds/pageturn.wav"));
|
||||||
|
Instance* selectedInstance = g_selectedInstances.at(0);
|
||||||
|
if(selectedInstance->getParent() != NULL)
|
||||||
|
selectedInstance->getParent()->removeChild(selectedInstance);
|
||||||
|
delete selectedInstance;
|
||||||
|
selectedInstance = NULL;
|
||||||
|
g_selectedInstances.erase(g_selectedInstances.begin());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
undeletable++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(g_selectedInstances.size() == 0)
|
||||||
|
g_usableApp->_propWindow->ClearProperties();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::onInit() {
|
||||||
|
|
||||||
|
// Called before Application::run() beings
|
||||||
|
cameraController.setFrame(Vector3(0,2,10));
|
||||||
|
_dataModel = new DataModelInstance();
|
||||||
|
_dataModel->setParent(NULL);
|
||||||
|
_dataModel->name = "undefined";
|
||||||
|
_dataModel->font = g_fntdominant;
|
||||||
|
g_dataModel = _dataModel;
|
||||||
|
|
||||||
|
//initGUI();
|
||||||
|
|
||||||
|
#ifdef LEGACY_LOAD_G3DFUN_LEVEL
|
||||||
|
PartInstance* test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3(0.2F,0.3F,1);
|
||||||
|
test->setSize(Vector3(24,1,24));
|
||||||
|
test->setPosition(Vector3(0,0,0));
|
||||||
|
test->setCFrame(test->getCFrame() * Matrix3::fromEulerAnglesXYZ(0,toRadians(0),toRadians(0)));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3(.5F,1,.5F);
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(-10,1,0));
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3(.5F,1,.5F);
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(10,1,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(7,2,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(-7,2,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(4,3,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(-5,3,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(1,4,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(-3,4,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(-2,5,0));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(0,6,0));
|
||||||
|
|
||||||
|
test = makePart();
|
||||||
|
test->setParent(_dataModel->getWorkspace());
|
||||||
|
test->color = Color3::gray();
|
||||||
|
test->setSize(Vector3(4,1,2));
|
||||||
|
test->setPosition(Vector3(2,7,0));
|
||||||
|
#else
|
||||||
|
_dataModel->debugGetOpen();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//setDesiredFrameRate(60);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//GApplet::onInit();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void Application::onCleanup() {
|
||||||
|
clearInstances();
|
||||||
|
sky->~Sky();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void Application::onLogic() {
|
||||||
|
// Add non-simulation game logic and AI code here
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Application::onNetwork() {
|
||||||
|
// Poll net messages here
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//double getVectorDistance(Vector3 vector1, Vector3 vector2)
|
||||||
|
//{
|
||||||
|
// return pow(pow((double)vector1.x - (double)vector2.x, 2) + pow((double)vector1.y - (double)vector2.y, 2) + pow((double)vector1.z - (double)vector2.z, 2), 0.5);
|
||||||
|
//}
|
||||||
|
|
||||||
|
std::vector<Instance*> Application::getSelection()
|
||||||
|
{
|
||||||
|
return g_selectedInstances;
|
||||||
|
}
|
||||||
|
void Application::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
_dataModel->getGuiRoot()->update();
|
||||||
|
|
||||||
|
if(_dataModel->name != _title)
|
||||||
|
{
|
||||||
|
_title = _dataModel->name;
|
||||||
|
std::string text = "Game \"" + _title + "\"";
|
||||||
|
SetWindowText(_hWndMain, text.c_str());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
cameraController.update(this);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*double getOSVersion() {
|
||||||
|
OSVERSIONINFO osvi;
|
||||||
|
|
||||||
|
ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
|
||||||
|
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||||
|
|
||||||
|
GetVersionEx(&osvi);
|
||||||
|
std::string version = Convert(osvi.dwMajorVersion) + "." + Convert(osvi.dwMinorVersion);
|
||||||
|
return ::atof(version.c_str());
|
||||||
|
}*/
|
||||||
|
/*
|
||||||
|
bool IsHolding(int button)
|
||||||
|
{
|
||||||
|
return (GetKeyState(button) >> 1)>0;
|
||||||
|
}
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Application::onUserInput(UserInput* ui) {
|
||||||
|
|
||||||
|
/*
|
||||||
|
if(GetHoldKeyState(VK_LCONTROL))
|
||||||
|
{
|
||||||
|
if(GetHoldKeyState('D'))
|
||||||
|
{
|
||||||
|
_messageTime = System::time();
|
||||||
|
if(debugMode())
|
||||||
|
_message = "Debug Mode Disabled";
|
||||||
|
else
|
||||||
|
_message = "Debug Mode Enabled";
|
||||||
|
setDebugMode(!debugMode());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
if(GetHoldKeyState(VK_F8))
|
||||||
|
{
|
||||||
|
_dataModel->getGuiRoot()->setDebugMessage("FOV Set to 10", System::time());
|
||||||
|
}
|
||||||
|
//}
|
||||||
|
|
||||||
|
//_dataModel->mousex = ui->getMouseX();
|
||||||
|
//_dataModel->mousey = ui->getMouseY();
|
||||||
|
_dataModel->mouseButton1Down = (GetKeyState(VK_LBUTTON) & 0x100) != 0;
|
||||||
|
|
||||||
|
if (GetHoldKeyState(VK_LBUTTON)) {
|
||||||
|
if (_dragging) {
|
||||||
|
PartInstance* part = NULL;
|
||||||
|
if(g_selectedInstances.size() > 0)
|
||||||
|
part = (PartInstance*) g_selectedInstances.at(0);
|
||||||
|
Ray dragRay = cameraController.getCamera()->worldRay(_dataModel->mousex, _dataModel->mousey, renderDevice->getViewport());
|
||||||
|
std::vector<Instance*> instances = _dataModel->getWorkspace()->getAllChildren();
|
||||||
|
for(size_t i = 0; i < instances.size(); i++)
|
||||||
|
{
|
||||||
|
if(PartInstance* moveTo = dynamic_cast<PartInstance*>(instances.at(i)))
|
||||||
|
{
|
||||||
|
float __time = testRay.intersectionTime(moveTo->getBox());
|
||||||
|
float __nearest=std::numeric_limits<float>::infinity();
|
||||||
|
if (__time != inf())
|
||||||
|
{
|
||||||
|
if (__nearest>__time)
|
||||||
|
{
|
||||||
|
// BROKEN
|
||||||
|
//Vector3 closest = (dragRay.closestPoint(moveTo->getPosition()) * 2);
|
||||||
|
//part->setPosition(closest);
|
||||||
|
//part->setPosition(Vector3(floor(closest.x),part->getPosition().y,floor(closest.z)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Sleep(10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Camera KB Handling {
|
||||||
|
if (GetKPBool(VK_OEM_COMMA)) //Left
|
||||||
|
g_usableApp->cameraController.panLeft();
|
||||||
|
else if (GetKPBool(VK_OEM_PERIOD)) // Right
|
||||||
|
g_usableApp->cameraController.panRight();
|
||||||
|
else if (GetKPBool(0x49)) // Zoom In (I)
|
||||||
|
g_usableApp->cameraController.Zoom(1);
|
||||||
|
else if (GetKPBool(0x4F)) // Zoom Out (O)
|
||||||
|
g_usableApp->cameraController.Zoom(-1);
|
||||||
|
// }
|
||||||
|
|
||||||
|
//readMouseGUIInput();
|
||||||
|
// Add other key handling here
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::makeFlag(Vector3 &vec, RenderDevice* &rd)
|
||||||
|
{
|
||||||
|
|
||||||
|
Vector3 up = Vector3(vec.x, vec.y+3, vec.z);
|
||||||
|
rd->setColor(Color3::blue());
|
||||||
|
rd->beforePrimitive();
|
||||||
|
|
||||||
|
glBegin(GL_LINES);
|
||||||
|
glVertex3f(vec.x, vec.y, vec.z);
|
||||||
|
glVertex3f(up.x, up.y, up.z);
|
||||||
|
glEnd();
|
||||||
|
|
||||||
|
glBegin( GL_TRIANGLES );
|
||||||
|
glVertex3f(up.x, up.y-1, up.z);
|
||||||
|
glVertex3f(up.x, up.y-0.5, up.z-1);
|
||||||
|
glVertex3f(up.x, up.y, up.z);
|
||||||
|
|
||||||
|
glVertex3f(up.x, up.y, up.z);
|
||||||
|
glVertex3f(up.x, up.y-0.5, up.z-1);
|
||||||
|
glVertex3f(up.x, up.y-1, up.z);
|
||||||
|
|
||||||
|
glEnd();
|
||||||
|
rd->afterPrimitive();
|
||||||
|
rd->setColor(Color3::white());
|
||||||
|
//I know how i will approach this now
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::setMode(int mode)
|
||||||
|
{
|
||||||
|
_mode = mode;
|
||||||
|
}
|
||||||
|
int Application::getMode()
|
||||||
|
{
|
||||||
|
return _mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Application::drawOutline(Vector3 from, Vector3 to, RenderDevice* rd, LightingParameters lighting, Vector3 size, Vector3 pos, CoordinateFrame c)
|
||||||
|
{
|
||||||
|
|
||||||
|
Color3 outline = Color3::cyan();//Color3(0.098F,0.6F,1.0F);
|
||||||
|
float offsetSize = 0.05F;
|
||||||
|
//X
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x - offsetSize, from.y + offsetSize, from.z + offsetSize), Vector3(to.x + offsetSize, from.y - offsetSize, from.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x - offsetSize, to.y + offsetSize, from.z + offsetSize), Vector3(to.x + offsetSize, to.y - offsetSize, from.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x - offsetSize, to.y + offsetSize, to.z + offsetSize), Vector3(to.x + offsetSize, to.y - offsetSize, to.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x - offsetSize, from.y + offsetSize, to.z + offsetSize), Vector3(to.x + offsetSize, from.y - offsetSize, to.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
//Y
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x + offsetSize, from.y - offsetSize + 0.1, from.z + offsetSize), Vector3(from.x - offsetSize, to.y + offsetSize - 0.1, from.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(to.x + offsetSize, from.y - offsetSize + 0.1, from.z + offsetSize), Vector3(to.x - offsetSize, to.y + offsetSize - 0.1, from.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(to.x + offsetSize, from.y - offsetSize + 0.1, to.z + offsetSize), Vector3(to.x - offsetSize, to.y + offsetSize-0.1, to.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x + offsetSize, from.y - offsetSize + 0.1, to.z + offsetSize), Vector3(from.x - offsetSize, to.y + offsetSize - 0.1, to.z - offsetSize))), rd, outline, Color4::clear());
|
||||||
|
|
||||||
|
//Z
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x + offsetSize, from.y + offsetSize, from.z - offsetSize), Vector3(from.x - offsetSize, from.y - offsetSize, to.z + offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(from.x + offsetSize, to.y + offsetSize, from.z - offsetSize), Vector3(from.x - offsetSize, to.y - offsetSize, to.z + offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(to.x + offsetSize, from.y + offsetSize, from.z - offsetSize), Vector3(to.x - offsetSize, from.y - offsetSize, to.z + offsetSize))), rd, outline, Color4::clear());
|
||||||
|
Draw::box(c.toWorldSpace(Box(Vector3(to.x + offsetSize, to.y + offsetSize, from.z - offsetSize), Vector3(to.x - offsetSize, to.y - offsetSize, to.z + offsetSize))), rd, outline, Color4::clear());
|
||||||
|
|
||||||
|
if(_mode == ARROWS)
|
||||||
|
{
|
||||||
|
rd->setLight(0, NULL);
|
||||||
|
rd->setAmbientLightColor(Color3(1,1,1));
|
||||||
|
|
||||||
|
AABox box;
|
||||||
|
c.toWorldSpace(Box(from, to)).getBounds(box);
|
||||||
|
float max = box.high().y - pos.y;
|
||||||
|
|
||||||
|
Draw::arrow(pos, Vector3(0, 1.5+max, 0), rd);
|
||||||
|
Draw::arrow(pos, Vector3(0, (-1.5)-max, 0), rd);
|
||||||
|
|
||||||
|
max = box.high().x - pos.x;
|
||||||
|
|
||||||
|
Draw::arrow(pos, Vector3(1.5+max, 0, 0), rd);
|
||||||
|
Draw::arrow(pos, Vector3((-1.5)-max, 0, 0), rd);
|
||||||
|
|
||||||
|
max = box.high().z - pos.z;
|
||||||
|
|
||||||
|
Draw::arrow(pos, Vector3(0, 0, 1.5+max), rd);
|
||||||
|
Draw::arrow(pos, Vector3(0, 0, (-1.5)-max), rd);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
rd->setAmbientLightColor(lighting.ambient);
|
||||||
|
rd->setLight(0, GLight::directional(lighting.lightDirection, lighting.lightColor));
|
||||||
|
}
|
||||||
|
else if(_mode == RESIZE)
|
||||||
|
{
|
||||||
|
Color3 sphereColor = outline;
|
||||||
|
rd->setLight(0, NULL);
|
||||||
|
rd->setAmbientLightColor(Color3(1,1,1));
|
||||||
|
Vector3 gamepoint = pos;
|
||||||
|
Vector3 camerapoint = rd->getCameraToWorldMatrix().translation;
|
||||||
|
float distance = pow(pow((double)gamepoint.x - (double)camerapoint.x, 2) + pow((double)gamepoint.y - (double)camerapoint.y, 2) + pow((double)gamepoint.z - (double)camerapoint.z, 2), 0.5);
|
||||||
|
if(distance < 200)
|
||||||
|
{
|
||||||
|
|
||||||
|
float multiplier = distance * 0.025F/2;
|
||||||
|
if(multiplier < 0.25F)
|
||||||
|
multiplier = 0.25F;
|
||||||
|
Vector3 position = pos + (c.lookVector()*((size.z/2)+1));
|
||||||
|
Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear());
|
||||||
|
position = pos - (c.lookVector()*((size.z/2)+1));
|
||||||
|
Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear());
|
||||||
|
|
||||||
|
position = pos + (c.rightVector()*((size.x/2)+1));
|
||||||
|
Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear());
|
||||||
|
position = pos - (c.rightVector()*((size.x/2)+1));
|
||||||
|
Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear());
|
||||||
|
|
||||||
|
position = pos + (c.upVector()*((size.y/2)+1));
|
||||||
|
Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear());
|
||||||
|
position = pos - (c.upVector()*((size.y/2)+1));
|
||||||
|
Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear());
|
||||||
|
}
|
||||||
|
rd->setAmbientLightColor(lighting.ambient);
|
||||||
|
rd->setLight(0, GLight::directional(lighting.lightDirection, lighting.lightColor));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::exitApplication()
|
||||||
|
{
|
||||||
|
//endApplet = true;
|
||||||
|
//endProgram = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Application::onGraphics(RenderDevice* rd) {
|
||||||
|
|
||||||
|
G3D::uint8 num = 0;
|
||||||
|
POINT mousepos;
|
||||||
|
mouseOnScreen = true;
|
||||||
|
if (GetCursorPos(&mousepos))
|
||||||
|
{
|
||||||
|
POINT pointm = mousepos;
|
||||||
|
if (ScreenToClient(_hWndMain, &mousepos))
|
||||||
|
{
|
||||||
|
//mouseOnScreen = true;
|
||||||
|
//POINT pointm;
|
||||||
|
///GetCursorPos(&pointm);
|
||||||
|
if(_hwndRenderer != WindowFromPoint(pointm)) //OLD: mousepos.x < 1 || mousepos.y < 1 || mousepos.x >= rd->getViewport().width()-1 || mousepos.y >= rd->getViewport().height()-1
|
||||||
|
{
|
||||||
|
mouseOnScreen = false;
|
||||||
|
//ShowCursor(true);
|
||||||
|
_window->setMouseVisible(true);
|
||||||
|
//rd->window()->setInputCaptureCount(0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mouseOnScreen = true;
|
||||||
|
//SetCursor(NULL);
|
||||||
|
_window->setMouseVisible(false);
|
||||||
|
//rd->window()->setInputCaptureCount(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Globals::useMousePoint)
|
||||||
|
{
|
||||||
|
mousepos = Globals::mousepoint;
|
||||||
|
ScreenToClient(_hWndMain, &mousepos);
|
||||||
|
}
|
||||||
|
|
||||||
|
LightingParameters lighting(G3D::toSeconds(11, 00, 00, AM));
|
||||||
|
renderDevice->setProjectionAndCameraMatrix(*cameraController.getCamera());
|
||||||
|
|
||||||
|
// Cyan background
|
||||||
|
//renderDevice->setColorClearValue(Color3(0.0f, 0.5f, 1.0f));
|
||||||
|
|
||||||
|
renderDevice->clear(sky.isNull(), true, true);
|
||||||
|
if (sky.notNull()) {
|
||||||
|
sky->render(renderDevice, lighting);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Setup lighting
|
||||||
|
renderDevice->enableLighting();
|
||||||
|
|
||||||
|
renderDevice->setShadeMode(RenderDevice::SHADE_SMOOTH);
|
||||||
|
renderDevice->setAmbientLightColor(Color3(1,1,1));
|
||||||
|
|
||||||
|
renderDevice->setLight(0, GLight::directional(lighting.lightDirection, lighting.lightColor));
|
||||||
|
renderDevice->setAmbientLightColor(lighting.ambient);
|
||||||
|
|
||||||
|
rd->beforePrimitive();
|
||||||
|
CoordinateFrame forDraw = rd->getObjectToWorldMatrix();
|
||||||
|
glEnableClientState(GL_VERTEX_ARRAY);
|
||||||
|
glEnableClientState(GL_COLOR_ARRAY);
|
||||||
|
glEnableClientState(GL_NORMAL_ARRAY);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for (unsigned int i = 0; i < _dataModel->getWorkspace()->__pvVector.size(); i++)
|
||||||
|
{
|
||||||
|
_dataModel->getWorkspace()->__pvVector[i]->render(rd);
|
||||||
|
}
|
||||||
|
//_dataModel->getWorkspace()->render(rd);
|
||||||
|
glDisableClientState(GL_VERTEX_ARRAY);
|
||||||
|
glDisableClientState(GL_COLOR_ARRAY);
|
||||||
|
glDisableClientState(GL_NORMAL_ARRAY);
|
||||||
|
rd->setObjectToWorldMatrix(forDraw);
|
||||||
|
rd->afterPrimitive();
|
||||||
|
|
||||||
|
if(g_selectedInstances.size() > 0)
|
||||||
|
{
|
||||||
|
for(size_t i = 0; i < g_selectedInstances.size(); i++)
|
||||||
|
{
|
||||||
|
if(PartInstance* part = dynamic_cast<PartInstance*>(g_selectedInstances.at(i)))
|
||||||
|
{
|
||||||
|
Vector3 size = part->getSize();
|
||||||
|
Vector3 pos = part->getPosition();
|
||||||
|
drawOutline(Vector3(0+size.x/2, 0+size.y/2, 0+size.z/2) ,Vector3(0-size.x/2,0-size.y/2,0-size.z/2), rd, lighting, Vector3(size.x/2, size.y/2, size.z/2), Vector3(pos.x, pos.y, pos.z), part->getCFrameRenderBased());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//Vector3 gamepoint = Vector3(0, 5, 0);
|
||||||
|
//Vector3 camerapoint = rd->getCameraToWorldMatrix().translation;
|
||||||
|
//float distance = pow(pow((double)gamepoint.x - (double)camerapoint.x, 2) + pow((double)gamepoint.y - (double)camerapoint.y, 2) + pow((double)gamepoint.z - (double)camerapoint.z, 2), 0.5);
|
||||||
|
//if(distance < 50 && distance > -50)
|
||||||
|
|
||||||
|
//{
|
||||||
|
// if(distance < 0)
|
||||||
|
// distance = distance*-1;
|
||||||
|
// fntdominant->draw3D(rd, "Testing", CoordinateFrame(rd->getCameraToWorldMatrix().rotation, gamepoint), 0.04*distance, Color3::yellow(), Color3::black(), G3D::GFont::XALIGN_CENTER, G3D::GFont::YALIGN_CENTER);
|
||||||
|
//}
|
||||||
|
|
||||||
|
renderDevice->disableLighting();
|
||||||
|
|
||||||
|
if (sky.notNull()) {
|
||||||
|
sky->renderLensFlare(renderDevice, lighting);
|
||||||
|
}
|
||||||
|
renderDevice->push2D();
|
||||||
|
_dataModel->getGuiRoot()->renderGUI(renderDevice, m_graphicsWatch.FPS());
|
||||||
|
rd->pushState();
|
||||||
|
rd->beforePrimitive();
|
||||||
|
|
||||||
|
if(Globals::showMouse && mouseOnScreen)
|
||||||
|
{
|
||||||
|
glEnable( GL_TEXTURE_2D );
|
||||||
|
glEnable(GL_BLEND);// you enable blending function
|
||||||
|
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||||
|
|
||||||
|
std::vector<Instance*> instances = _dataModel->getWorkspace()->getAllChildren();
|
||||||
|
currentcursorid = cursorid;
|
||||||
|
for(size_t i = 0; i < instances.size(); i++)
|
||||||
|
{
|
||||||
|
if(PartInstance* test = dynamic_cast<PartInstance*>(instances.at(i)))
|
||||||
|
{
|
||||||
|
float time = cameraController.getCamera()->worldRay(_dataModel->mousex, _dataModel->mousey, renderDevice->getViewport()).intersectionTime(test->getBox());
|
||||||
|
//float time = testRay.intersectionTime(test->getBox());
|
||||||
|
if (time != inf())
|
||||||
|
{
|
||||||
|
currentcursorid = cursorOvrid;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
glBindTexture( GL_TEXTURE_2D, currentcursorid);
|
||||||
|
|
||||||
|
|
||||||
|
glBegin( GL_QUADS );
|
||||||
|
glTexCoord2d(0.0,0.0);
|
||||||
|
glVertex2f(mousepos.x-64, mousepos.y-64);
|
||||||
|
glTexCoord2d( 1.0,0.0 );
|
||||||
|
glVertex2f(mousepos.x+64, mousepos.y-64);
|
||||||
|
glTexCoord2d(1.0,1.0 );
|
||||||
|
glVertex2f(mousepos.x+64, mousepos.y+64 );
|
||||||
|
glTexCoord2d( 0.0,1.0 );
|
||||||
|
glVertex2f( mousepos.x-64, mousepos.y+64 );
|
||||||
|
glEnd();
|
||||||
|
|
||||||
|
glDisable( GL_TEXTURE_2D );
|
||||||
|
}
|
||||||
|
|
||||||
|
rd->afterPrimitive();
|
||||||
|
rd->popState();
|
||||||
|
renderDevice->pop2D();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::onKeyPressed(int key)
|
||||||
|
{
|
||||||
|
if(key==VK_DELETE)
|
||||||
|
{
|
||||||
|
deleteInstance();
|
||||||
|
}
|
||||||
|
if (GetHoldKeyState(VK_RCONTROL))
|
||||||
|
{
|
||||||
|
if (key=='O')
|
||||||
|
{
|
||||||
|
_dataModel->getOpen();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void Application::onKeyUp(int key)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::onMouseLeftPressed(HWND hwnd,int x,int y)
|
||||||
|
{
|
||||||
|
//Removed set focus
|
||||||
|
|
||||||
|
|
||||||
|
std::cout << "Click: " << x << "," << y << std::endl;
|
||||||
|
|
||||||
|
bool onGUI = _dataModel->getGuiRoot()->mouseInGUI(renderDevice, x, y);
|
||||||
|
|
||||||
|
|
||||||
|
if(!onGUI)
|
||||||
|
{
|
||||||
|
testRay = cameraController.getCamera()->worldRay(_dataModel->mousex, _dataModel->mousey, renderDevice->getViewport());
|
||||||
|
float nearest=std::numeric_limits<float>::infinity();
|
||||||
|
Vector3 camPos = cameraController.getCamera()->getCoordinateFrame().translation;
|
||||||
|
std::vector<Instance*> instances = _dataModel->getWorkspace()->getAllChildren();
|
||||||
|
bool objFound = false;
|
||||||
|
for(size_t i = 0; i < instances.size(); i++)
|
||||||
|
{
|
||||||
|
if(PartInstance* test = dynamic_cast<PartInstance*>(instances.at(i)))
|
||||||
|
{
|
||||||
|
float time = testRay.intersectionTime(test->getBox());
|
||||||
|
|
||||||
|
if (time != inf())
|
||||||
|
{
|
||||||
|
objFound = true;
|
||||||
|
if (nearest>time)
|
||||||
|
{
|
||||||
|
nearest=time;
|
||||||
|
bool found = false;
|
||||||
|
for(size_t i = 0; i < g_selectedInstances.size(); i++)
|
||||||
|
{
|
||||||
|
if(g_selectedInstances.at(i) == test)
|
||||||
|
{
|
||||||
|
found = true;
|
||||||
|
//ShowWindow(_propWindow->_hwndProp, SW_SHOW);
|
||||||
|
//SetActiveWindow(_propWindow->_hwndProp);
|
||||||
|
//SetForegroundWindow(_propWindow->_hwndProp);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!found)
|
||||||
|
{
|
||||||
|
g_selectedInstances.clear();
|
||||||
|
g_selectedInstances.push_back(test);
|
||||||
|
}
|
||||||
|
selectInstance(test, _propWindow);
|
||||||
|
//_message = "Dragging = true.";
|
||||||
|
//_messageTime = System::time();
|
||||||
|
//_dragging = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!objFound)
|
||||||
|
selectInstance(_dataModel,_propWindow);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::selectInstance(Instance* selectedInstance, PropertyWindow* propWindow)
|
||||||
|
{
|
||||||
|
g_selectedInstances.clear();
|
||||||
|
g_selectedInstances.push_back(selectedInstance);
|
||||||
|
propWindow->UpdateSelected(selectedInstance);
|
||||||
|
|
||||||
|
}
|
||||||
|
G3D::RenderDevice* Application::getRenderDevice()
|
||||||
|
{
|
||||||
|
return renderDevice;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::onMouseLeftUp(G3D::RenderDevice* renderDevice, int x, int y)
|
||||||
|
{
|
||||||
|
//std::cout << "Release: " << x << "," << y << std::endl;
|
||||||
|
_dataModel->getGuiRoot()->onMouseLeftUp(renderDevice, x, y);
|
||||||
|
_dragging = false;
|
||||||
|
//_message = "Dragging = false.";
|
||||||
|
//_messageTime = System::time();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::onMouseRightPressed(int x,int y)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
void Application::onMouseRightUp(int x,int y)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
void Application::onMouseMoved(int x,int y)
|
||||||
|
{
|
||||||
|
oldMouse = _dataModel->getMousePos();
|
||||||
|
_dataModel->mousex = x;
|
||||||
|
_dataModel->mousey = y;
|
||||||
|
|
||||||
|
}
|
||||||
|
void Application::onMouseWheel(int x,int y,short delta)
|
||||||
|
{
|
||||||
|
if (mouseOnScreen==true)
|
||||||
|
if (cameraController.onMouseWheel(x, y, delta))
|
||||||
|
{
|
||||||
|
AudioPlayer::playSound(cameraSound);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::run() {
|
||||||
|
g_usableApp = this;
|
||||||
|
//setDebugMode(false);
|
||||||
|
//debugController.setActive(false);
|
||||||
|
/*
|
||||||
|
if (!createWindowClass("ToolWindowClass",ToolProc,GetModuleHandle(0)))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
HWND propertyHWnd = CreateWindowEx(
|
||||||
|
WS_EX_TOOLWINDOW,"ToolWindowClass", "ToolWindow",
|
||||||
|
WS_SYSMENU | WS_VISIBLE | WS_CHILD,
|
||||||
|
0, 0, 800, 64,
|
||||||
|
hWndMain, NULL, GetModuleHandle(0), NULL);
|
||||||
|
|
||||||
|
ShowWindow(propertyHWnd,SW_SHOW);
|
||||||
|
*/
|
||||||
|
UpdateWindow(_hWndMain);
|
||||||
|
|
||||||
|
// Load objects here=
|
||||||
|
cursor = Texture::fromFile(GetFileInPath("/content/images/ArrowCursor.png"));
|
||||||
|
cursorOvr = Texture::fromFile(GetFileInPath("/content/images/DragCursor.png"));
|
||||||
|
Globals::surface = Texture::fromFile(GetFileInPath("/content/images/surfacebr.png"));
|
||||||
|
Globals::surfaceId = Globals::surface->getOpenGLID();
|
||||||
|
cameraSound = GetFileInPath("/content/sounds/SWITCH3.wav");
|
||||||
|
clickSound = GetFileInPath("/content/sounds/switch.wav");
|
||||||
|
dingSound = GetFileInPath("/content/sounds/electronicpingshort.wav");
|
||||||
|
sky = Sky::create(NULL, ExePath() + "/content/sky/");
|
||||||
|
cursorid = cursor->openGLID();
|
||||||
|
currentcursorid = cursorid;
|
||||||
|
cursorOvrid = cursorOvr->openGLID();
|
||||||
|
RealTime now=0, lastTime=0;
|
||||||
|
double simTimeRate = 1.0f;
|
||||||
|
float fps=3000.0f;
|
||||||
|
|
||||||
|
RealTime desiredFrameDuration=1.0/fps;
|
||||||
|
onInit();
|
||||||
|
RealTime lastWaitTime=0;
|
||||||
|
|
||||||
|
MSG messages;
|
||||||
|
//RECT cRect;
|
||||||
|
//GetClientRect(_hWndMain,&cRect);
|
||||||
|
//renderDevice->notifyResize(cRect.right,cRect.bottom);
|
||||||
|
//Rect2D viewportRect = Rect2D::xywh(0,0,cRect.right,cRect.bottom);
|
||||||
|
//renderDevice->setViewport(viewportRect);
|
||||||
|
//window()->setInputCaptureCount(1);
|
||||||
|
resizeWithParent(_hWndMain);
|
||||||
|
|
||||||
|
while (!quit)
|
||||||
|
{
|
||||||
|
|
||||||
|
lastTime = now;
|
||||||
|
now = System::getTick();
|
||||||
|
RealTime timeStep = now - lastTime;
|
||||||
|
|
||||||
|
m_userInputWatch.tick();
|
||||||
|
onUserInput(userInput);
|
||||||
|
//m_moduleManager->onUserInput(_userInput);
|
||||||
|
m_userInputWatch.tock();
|
||||||
|
|
||||||
|
m_simulationWatch.tick();
|
||||||
|
//debugController.doSimulation(clamp(timeStep, 0.0, 0.1));
|
||||||
|
//g3dCamera.setCoordinateFrame
|
||||||
|
//(debugController.getCoordinateFrame());
|
||||||
|
|
||||||
|
double rate = simTimeRate;
|
||||||
|
RealTime rdt = timeStep;
|
||||||
|
SimTime sdt = timeStep * rate;
|
||||||
|
SimTime idt = desiredFrameDuration * rate;
|
||||||
|
|
||||||
|
onSimulation(rdt,sdt,idt);
|
||||||
|
m_simulationWatch.tock();
|
||||||
|
|
||||||
|
m_waitWatch.tick();
|
||||||
|
{
|
||||||
|
RealTime now = System::time();
|
||||||
|
// Compute accumulated time
|
||||||
|
System::sleep(max(0.0, desiredFrameDuration - (now - lastWaitTime)));
|
||||||
|
lastWaitTime = System::time();
|
||||||
|
}
|
||||||
|
m_waitWatch.tock();
|
||||||
|
|
||||||
|
m_graphicsWatch.tick();
|
||||||
|
renderDevice->beginFrame();
|
||||||
|
renderDevice->pushState();
|
||||||
|
onGraphics(renderDevice);
|
||||||
|
renderDevice->popState();
|
||||||
|
//renderDebugInfo();
|
||||||
|
renderDevice->endFrame();
|
||||||
|
//debugText.clear();
|
||||||
|
m_graphicsWatch.tock();
|
||||||
|
|
||||||
|
while (PeekMessage (&messages, NULL, 0, 0,PM_REMOVE))
|
||||||
|
{
|
||||||
|
if (IsDialogMessage(_hWndMain, &messages) == 0)
|
||||||
|
{
|
||||||
|
TranslateMessage(&messages);
|
||||||
|
DispatchMessage(&messages);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
onCleanup();
|
||||||
|
}
|
||||||
|
void Application::resizeWithParent(HWND parentWindow)
|
||||||
|
{
|
||||||
|
RECT rect;
|
||||||
|
GetClientRect(parentWindow,&rect);
|
||||||
|
SetWindowPos(_hwndRenderer,NULL,0,0,rect.right,rect.bottom-60,SWP_NOMOVE);
|
||||||
|
SetWindowPos(_hwndToolbox,NULL,0,rect.bottom-60,rect.right,60,SWP_NOACTIVATE | SWP_SHOWWINDOW);
|
||||||
|
GetClientRect(_hwndRenderer,&rect);
|
||||||
|
int viewWidth=rect.right;
|
||||||
|
int viewHeight=rect.bottom;
|
||||||
|
renderDevice->notifyResize(viewWidth,viewHeight);
|
||||||
|
Rect2D viewportRect = Rect2D::xywh(0,0,viewWidth,viewHeight);
|
||||||
|
renderDevice->setViewport(viewportRect);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::QuitApp()
|
||||||
|
{
|
||||||
|
PostQuitMessage(0);
|
||||||
|
quit=true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::onCreate(HWND parentWindow)
|
||||||
|
{
|
||||||
|
//SetWindowLongPtr(hwndRenderer,GWL_USERDATA,(LONG)this);
|
||||||
|
//SetWindowLongPtr(hwndToolbox,GWL_USERDATA,(LONG)this);
|
||||||
|
//SetWindowLongPtr(hwndMain,GWL_USERDATA,(LONG)&app);
|
||||||
|
}
|
||||||
@@ -1,12 +1,10 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include <G3DAll.h>
|
#include <G3DAll.h>
|
||||||
#include "PropertyWindow.h"
|
#include "PropertyWindow.h"
|
||||||
#include "DataModelV2/TextButtonInstance.h"
|
#include "TextButtonInstance.h"
|
||||||
#include "DataModelV2/ImageButtonInstance.h"
|
#include "ImageButtonInstance.h"
|
||||||
#include "CameraController.h"
|
#include "CameraController.h"
|
||||||
#include "IEBrowser.h"
|
//#include "GuiRoot.h"
|
||||||
#include "Mouse.h"
|
|
||||||
#include "Tool/Tool.h"
|
|
||||||
|
|
||||||
class TextButtonInstance;
|
class TextButtonInstance;
|
||||||
class ImageButtonInstance;
|
class ImageButtonInstance;
|
||||||
@@ -27,10 +25,11 @@ class Application { // : public GApp {
|
|||||||
virtual void onUserInput(UserInput* ui);
|
virtual void onUserInput(UserInput* ui);
|
||||||
virtual void onCleanup();
|
virtual void onCleanup();
|
||||||
void clearInstances();
|
void clearInstances();
|
||||||
void navigateToolbox(std::string);
|
|
||||||
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);
|
||||||
|
void makeFlag(Vector3 &vec, RenderDevice* &rd);
|
||||||
|
std::vector<Instance*> getSelection();
|
||||||
void deleteInstance();
|
void deleteInstance();
|
||||||
void run();
|
void run();
|
||||||
void QuitApp();
|
void QuitApp();
|
||||||
@@ -46,26 +45,18 @@ class Application { // : public GApp {
|
|||||||
void onMouseWheel(int x, int y, short delta);
|
void onMouseWheel(int x, int y, short delta);
|
||||||
void setFocus(bool isFocused);
|
void setFocus(bool isFocused);
|
||||||
int getMode();
|
int getMode();
|
||||||
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;
|
|
||||||
void changeTool(Tool *);
|
|
||||||
Mouse mouse;
|
|
||||||
bool viewportHasFocus();
|
|
||||||
private:
|
private:
|
||||||
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;
|
||||||
@@ -81,7 +72,6 @@ class Application { // : public GApp {
|
|||||||
int _mode;
|
int _mode;
|
||||||
GAppSettings _settings;
|
GAppSettings _settings;
|
||||||
double lightProjX, lightProjY, lightProjNear, lightProjFar;
|
double lightProjX, lightProjY, lightProjNear, lightProjFar;
|
||||||
IEBrowser* webBrowser;
|
|
||||||
protected:
|
protected:
|
||||||
Stopwatch m_graphicsWatch;
|
Stopwatch m_graphicsWatch;
|
||||||
Stopwatch m_logicWatch;
|
Stopwatch m_logicWatch;
|
||||||
112
AudioPlayer.cpp
Normal file
112
AudioPlayer.cpp
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
#include "AudioPlayer.h"
|
||||||
|
#include "SDL.h"
|
||||||
|
#include "SDL_audio.h"
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <malloc.h>
|
||||||
|
#include <string.h>
|
||||||
|
#define NUM_SOUNDS 10
|
||||||
|
static SDL_AudioSpec fmt;
|
||||||
|
static bool initiated = false;
|
||||||
|
|
||||||
|
AudioPlayer::AudioPlayer(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
AudioPlayer::~AudioPlayer(void)
|
||||||
|
{
|
||||||
|
SDL_CloseAudio();
|
||||||
|
}
|
||||||
|
|
||||||
|
void AudioPlayer::init()
|
||||||
|
{
|
||||||
|
initiated = true;
|
||||||
|
extern void mixaudio(void *unused, Uint8 *stream, int len);
|
||||||
|
fmt.freq = 22050;
|
||||||
|
fmt.format = AUDIO_S16;
|
||||||
|
fmt.channels = 2;
|
||||||
|
fmt.samples = 1024; /* A good value for games */
|
||||||
|
fmt.callback = mixaudio;
|
||||||
|
fmt.userdata = NULL;
|
||||||
|
|
||||||
|
/* Open the audio device and start playing sound! */
|
||||||
|
if ( SDL_OpenAudio(&fmt, NULL) < 0 ) {
|
||||||
|
fprintf(stderr, "Unable to open audio: %s\n", SDL_GetError());
|
||||||
|
}
|
||||||
|
SDL_PauseAudio(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
static struct sample {
|
||||||
|
Uint8 *data;
|
||||||
|
Uint32 dpos;
|
||||||
|
Uint32 dlen;
|
||||||
|
} sounds[NUM_SOUNDS];
|
||||||
|
|
||||||
|
void mixaudio(void *unused, Uint8 *stream, int len)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
Uint32 amount;
|
||||||
|
|
||||||
|
for ( i=0; i<NUM_SOUNDS; ++i ) {
|
||||||
|
amount = (sounds[i].dlen-sounds[i].dpos);
|
||||||
|
if ( amount > (Uint32)len ) {
|
||||||
|
amount = len;
|
||||||
|
}
|
||||||
|
SDL_MixAudio(stream, &sounds[i].data[sounds[i].dpos], amount, SDL_MIX_MAXVOLUME);
|
||||||
|
sounds[i].dpos += amount;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void AudioPlayer::playSound(std::string fileString)
|
||||||
|
{
|
||||||
|
|
||||||
|
if(initiated)
|
||||||
|
{
|
||||||
|
char *file = new char[fileString.length() + 1];
|
||||||
|
strcpy(file, fileString.c_str());
|
||||||
|
|
||||||
|
|
||||||
|
int index;
|
||||||
|
SDL_AudioSpec wave;
|
||||||
|
Uint8 *data;
|
||||||
|
Uint32 dlen;
|
||||||
|
SDL_AudioCVT cvt;
|
||||||
|
|
||||||
|
/* Look for an empty (or finished) sound slot */
|
||||||
|
for ( index=0; index<NUM_SOUNDS; ++index ) {
|
||||||
|
if ( sounds[index].dpos == sounds[index].dlen ) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ( index == NUM_SOUNDS )
|
||||||
|
return;
|
||||||
|
|
||||||
|
/* Load the sound file and convert it to 16-bit stereo at 22kHz */
|
||||||
|
if ( SDL_LoadWAV(file, &wave, &data, &dlen) == NULL ) {
|
||||||
|
fprintf(stderr, "Couldn't load %s: %s\n", file, SDL_GetError());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
SDL_BuildAudioCVT(&cvt, wave.format, wave.channels, wave.freq,
|
||||||
|
AUDIO_S16, 2, fmt.freq);
|
||||||
|
cvt.buf = (Uint8*)malloc(dlen*cvt.len_mult);
|
||||||
|
memcpy(cvt.buf, data, dlen);
|
||||||
|
cvt.len = dlen;
|
||||||
|
SDL_ConvertAudio(&cvt);
|
||||||
|
SDL_FreeWAV(data);
|
||||||
|
|
||||||
|
/* Put the sound data in the slot (it starts playing immediately) */
|
||||||
|
if ( sounds[index].data ) {
|
||||||
|
free(sounds[index].data);
|
||||||
|
}
|
||||||
|
SDL_LockAudio();
|
||||||
|
sounds[index].data = cvt.buf;
|
||||||
|
sounds[index].dlen = cvt.len_cvt;
|
||||||
|
sounds[index].dpos = 0;
|
||||||
|
SDL_UnlockAudio();
|
||||||
|
delete [] file;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
OutputDebugString("Audio player not initialized, sound will not play\r\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,12 +1,11 @@
|
|||||||
|
#include <G3DAll.h>
|
||||||
#pragma once
|
#pragma once
|
||||||
#include <iostream>
|
|
||||||
#include <string.h>
|
|
||||||
class AudioPlayer
|
class AudioPlayer
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
AudioPlayer(void);
|
AudioPlayer(void);
|
||||||
~AudioPlayer(void);
|
~AudioPlayer(void);
|
||||||
|
|
||||||
static void init();
|
|
||||||
static void playSound(std::string);
|
static void playSound(std::string);
|
||||||
|
static void init();
|
||||||
};
|
};
|
||||||
BIN
B3dIcon.ico
BIN
B3dIcon.ico
Binary file not shown.
|
Before Width: | Height: | Size: 108 KiB |
@@ -1,6 +1,5 @@
|
|||||||
#include "DataModelV2/BaseButtonInstance.h"
|
#include "BaseButtonInstance.h"
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "Application.h"
|
|
||||||
|
|
||||||
|
|
||||||
ButtonListener* listener = NULL;
|
ButtonListener* listener = NULL;
|
||||||
@@ -14,18 +13,19 @@ BaseButtonInstance::BaseButtonInstance(void)
|
|||||||
void BaseButtonInstance::render(RenderDevice* rd)
|
void BaseButtonInstance::render(RenderDevice* rd)
|
||||||
{
|
{
|
||||||
DataModelInstance* dataModel = g_dataModel;
|
DataModelInstance* dataModel = g_dataModel;
|
||||||
Vector2 pos = Vector2(g_usableApp->mouse.x,g_usableApp->mouse.y);
|
Vector2 pos = Vector2(dataModel->mousex,dataModel->mousey);
|
||||||
drawObj(rd, pos, g_usableApp->mouse.isMouseDown());
|
drawObj(rd, pos, dataModel->mouseButton1Down);
|
||||||
Instance::render(rd);
|
Instance::render(rd);
|
||||||
}
|
}
|
||||||
|
|
||||||
BaseButtonInstance::~BaseButtonInstance(void)
|
BaseButtonInstance::~BaseButtonInstance(void)
|
||||||
{
|
{
|
||||||
|
delete listener;
|
||||||
}
|
}
|
||||||
|
|
||||||
void BaseButtonInstance::setButtonListener(ButtonListener& buttonListener)
|
void BaseButtonInstance::setButtonListener(ButtonListener* buttonListener)
|
||||||
{
|
{
|
||||||
listener = &buttonListener;
|
listener = buttonListener;
|
||||||
}
|
}
|
||||||
|
|
||||||
void BaseButtonInstance::drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown){}
|
void BaseButtonInstance::drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown){}
|
||||||
@@ -37,6 +37,7 @@ void BaseButtonInstance::onMouseClick()
|
|||||||
if(listener != NULL)
|
if(listener != NULL)
|
||||||
{
|
{
|
||||||
listener->onButton1MouseClick(this);
|
listener->onButton1MouseClick(this);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "Instance.h"
|
#include "instance.h"
|
||||||
#include "Listener/ButtonListener.h"
|
#include "ButtonListener.h"
|
||||||
|
|
||||||
class ButtonListener;
|
class ButtonListener;
|
||||||
class Instance;
|
class Instance;
|
||||||
@@ -14,7 +14,7 @@ public:
|
|||||||
virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown);
|
virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown);
|
||||||
virtual bool mouseInButton(float, float, RenderDevice* rd);
|
virtual bool mouseInButton(float, float, RenderDevice* rd);
|
||||||
virtual void onMouseClick();
|
virtual void onMouseClick();
|
||||||
void setButtonListener(ButtonListener&);
|
void setButtonListener(ButtonListener*);
|
||||||
bool floatBottom;
|
bool floatBottom;
|
||||||
bool floatRight;
|
bool floatRight;
|
||||||
bool floatCenter;
|
bool floatCenter;
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 8.00
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks3D", "Blocks3D VS2003.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
|
||||||
ProjectSection(ProjectDependencies) = postProject
|
|
||||||
EndProjectSection
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfiguration) = preSolution
|
|
||||||
Debug = Debug
|
|
||||||
Release = Release
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectDependencies) = postSolution
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfiguration) = postSolution
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug.ActiveCfg = Debug|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug.Build.0 = Debug|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release.ActiveCfg = Release|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ExtensibilityAddIns) = postSolution
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 7.10
|
|
||||||
# Visual C++ Express 2005
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks3D", "Blocks3D VS2003.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
||||||
@@ -1,717 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="7.10"
|
|
||||||
Name="Blocks3D"
|
|
||||||
ProjectGUID="{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
|
||||||
RootNamespace="Blocks3D">
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"/>
|
|
||||||
</Platforms>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory=".\Release"
|
|
||||||
IntermediateDirectory=".\Release"
|
|
||||||
ConfigurationType="1"
|
|
||||||
UseOfMFC="0"
|
|
||||||
UseOfATL="0"
|
|
||||||
ATLMinimizesCRunTimeLibraryUsage="FALSE"
|
|
||||||
CharacterSet="2">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="3"
|
|
||||||
InlineFunctionExpansion="2"
|
|
||||||
EnableIntrinsicFunctions="TRUE"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
OmitFramePointers="TRUE"
|
|
||||||
WholeProgramOptimization="TRUE"
|
|
||||||
AdditionalIncludeDirectories="".\src\include""
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;NO_SDL_MAIN;_ATL_STATIC_REGISTRY"
|
|
||||||
StringPooling="TRUE"
|
|
||||||
RuntimeLibrary="2"
|
|
||||||
EnableFunctionLevelLinking="TRUE"
|
|
||||||
RuntimeTypeInfo="TRUE"
|
|
||||||
PrecompiledHeaderFile=".\Release/Blocks3D.pch"
|
|
||||||
AssemblerListingLocation=".\Release/"
|
|
||||||
ObjectFile=".\Release/"
|
|
||||||
ProgramDataBaseFileName=".\Release/"
|
|
||||||
WarningLevel="3"
|
|
||||||
SuppressStartupBanner="TRUE"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="Advapi32.lib Comctl32.lib Comdlg32.lib Shell32.lib ode.lib Ole32.lib"
|
|
||||||
OutputFile="./Blocks3D.exe"
|
|
||||||
LinkIncremental="1"
|
|
||||||
SuppressStartupBanner="TRUE"
|
|
||||||
ProgramDatabaseFile=".\Release/Blocks3D.pdb"
|
|
||||||
SubSystem="2"
|
|
||||||
StackReserveSize="16777216"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
OptimizeForWindows98="2"
|
|
||||||
LinkTimeCodeGeneration="TRUE"
|
|
||||||
TargetMachine="1"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
PreprocessorDefinitions="NDEBUG"
|
|
||||||
MkTypLibCompatible="TRUE"
|
|
||||||
SuppressStartupBanner="TRUE"
|
|
||||||
TargetEnvironment="1"
|
|
||||||
TypeLibraryName=".\Release/Blocks3D.tlb"
|
|
||||||
HeaderFileName=""/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="NDEBUG"
|
|
||||||
Culture="4105"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedWrapperGeneratorTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory=".\Debug"
|
|
||||||
IntermediateDirectory=".\Debug"
|
|
||||||
ConfigurationType="1"
|
|
||||||
UseOfMFC="0"
|
|
||||||
ATLMinimizesCRunTimeLibraryUsage="FALSE"
|
|
||||||
CharacterSet="2"
|
|
||||||
ManagedExtensions="FALSE">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories=".\src\include"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_ATL_STATIC_REGISTRY;NO_SDL_MAIN"
|
|
||||||
MinimalRebuild="FALSE"
|
|
||||||
BasicRuntimeChecks="0"
|
|
||||||
RuntimeLibrary="3"
|
|
||||||
EnableFunctionLevelLinking="FALSE"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="TRUE"
|
|
||||||
PrecompiledHeaderFile=".\Debug/Blocks3D.pch"
|
|
||||||
AssemblerListingLocation=".\Debug/"
|
|
||||||
ObjectFile=".\Debug/"
|
|
||||||
ProgramDataBaseFileName=".\Debug/"
|
|
||||||
WarningLevel="3"
|
|
||||||
SuppressStartupBanner="TRUE"
|
|
||||||
DebugInformationFormat="3"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib Urlmon.lib ole32.lib oleaut32.lib uuid.lib oded.lib"
|
|
||||||
OutputFile="./Blocks3D-Debug.exe"
|
|
||||||
LinkIncremental="2"
|
|
||||||
SuppressStartupBanner="TRUE"
|
|
||||||
AdditionalLibraryDirectories=""
|
|
||||||
GenerateDebugInformation="TRUE"
|
|
||||||
ProgramDatabaseFile=".\Debug/Blocks3D.pdb"
|
|
||||||
SubSystem="1"
|
|
||||||
StackReserveSize="16777216"
|
|
||||||
TargetMachine="1"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
PreprocessorDefinitions="_DEBUG"
|
|
||||||
MkTypLibCompatible="TRUE"
|
|
||||||
SuppressStartupBanner="TRUE"
|
|
||||||
TargetEnvironment="1"
|
|
||||||
TypeLibraryName=".\Debug/Blocks3D.tlb"
|
|
||||||
HeaderFileName=""/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="_DEBUG"
|
|
||||||
Culture="4105"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedWrapperGeneratorTool"/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.dll"/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.Data.dll"/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.Drawing.dll"/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.Windows.Forms.dll"/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.XML.dll"/>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Application.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\AudioPlayer.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\ax.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\BrowserCallHandler.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\CameraController.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\ErrorFunctions.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Globals.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\IEBrowser.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\IEDispatcher.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\main.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Mouse.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\propertyGrid.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\PropertyWindow.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Renderer.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\StringFunctions.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\TextureHandler.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\WindowFunctions.cpp">
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Tool">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\ArrowTool.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\DraggerTool.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\SurfaceTool.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\Tool.cpp">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Listener">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\ButtonListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\CameraButtonListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\DeleteListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\GUDButtonListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\MenuButtonListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\ModeSelectionListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\RotateButtonListener.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\ToolbarListener.cpp">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="DataModelV2">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\DataModelInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\GroupInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\Instance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\LevelInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\LightingInstance.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\PartInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\PVInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\SelectionService.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\SoundInstance.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\SoundService.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\ThumbnailGeneratorInstance.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\WorkspaceInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Gui">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\BaseButtonInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\BaseGuiInstance.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\GuiRootInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\ImageButtonInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\TextButtonInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\ToggleImageButtonInstance.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="XplicitNgine">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\XplicitNgine\XplicitNgine.cpp">
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32">
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Helpers">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\base64.cpp">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Application.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\AudioPlayer.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\ax.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\BrowserCallHandler.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\CameraController.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Enum.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\ErrorFunctions.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Faces.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Globals.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\IEBrowser.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\IEDispatcher.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Mouse.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\propertyGrid.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\PropertyWindow.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Renderer.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\resource.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\StringFunctions.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\TextureHandler.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\ToolEnum.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\versioning.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\VS2005CompatShim.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\win32Defines.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\WindowFunctions.h">
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="RapidXML">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml.hpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml_iterators.hpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml_print.hpp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml_utils.hpp">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Listener">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\ButtonListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\CameraButtonListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\DeleteListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\GUDButtonListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\MenuButtonListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\ModeSelectionListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\RotateButtonListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\ToolbarListener.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModel\WorkspaceInstance.h">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Tool">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\ArrowTool.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\DraggerTool.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\SurfaceTool.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\Tool.h">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="DataModelV2">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\DataModelInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\GroupInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\Instance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\LevelInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\LightingInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\PartInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\PVInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\SelectionService.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\SoundInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\SoundService.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\ThumbnailGeneratorInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\WorkspaceInstance.h">
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Gui">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\BaseButtonInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\BaseGuiInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\GuiRootInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\ImageButtonInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\TextButtonInstance.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\ToggleImageButtonInstance.h">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="XplicitNgine">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\XplicitNgine\XplicitNgine.h">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Helpers">
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\base64.h">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
|
|
||||||
<File
|
|
||||||
RelativePath=".\Dialogs.rc">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\icon1.ico">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\Parts.bmp">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\roblox_RN1_icon.ico">
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
<Global
|
|
||||||
Name="RESOURCE_FILE"
|
|
||||||
Value="Dialogs.rc"/>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
<?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>
|
|
||||||
<dependency>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.6195" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
|
|
||||||
</dependentAssembly>
|
|
||||||
</dependency>
|
|
||||||
</assembly>
|
|
||||||
992
Blocks3D.vcproj
992
Blocks3D.vcproj
@@ -1,992 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="8.00"
|
|
||||||
Name="Blocks3D"
|
|
||||||
ProjectGUID="{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
|
||||||
RootNamespace="Blocks3D"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory=".\Release"
|
|
||||||
IntermediateDirectory=".\Release"
|
|
||||||
ConfigurationType="1"
|
|
||||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
|
||||||
UseOfMFC="0"
|
|
||||||
UseOfATL="0"
|
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
PreprocessorDefinitions="NDEBUG"
|
|
||||||
MkTypLibCompatible="true"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="1"
|
|
||||||
TypeLibraryName=".\Release/Blocks3D.tlb"
|
|
||||||
HeaderFileName=""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="2"
|
|
||||||
InlineFunctionExpansion="2"
|
|
||||||
EnableIntrinsicFunctions="true"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
OmitFramePointers="true"
|
|
||||||
WholeProgramOptimization="true"
|
|
||||||
AdditionalIncludeDirectories="".\src\include""
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_ATL_STATIC_REGISTRY;NO_SDL_MAIN"
|
|
||||||
StringPooling="true"
|
|
||||||
RuntimeLibrary="2"
|
|
||||||
EnableFunctionLevelLinking="true"
|
|
||||||
PrecompiledHeaderFile=".\Release/Blocks3D.pch"
|
|
||||||
AssemblerListingLocation=".\Release/"
|
|
||||||
ObjectFile=".\Release/"
|
|
||||||
ProgramDataBaseFileName=".\Release/"
|
|
||||||
WarningLevel="3"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="NDEBUG"
|
|
||||||
Culture="4105"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="Advapi32.lib Comctl32.lib Comdlg32.lib Shell32.lib ode.lib Ole32.lib"
|
|
||||||
OutputFile="./Blocks3D.exe"
|
|
||||||
LinkIncremental="1"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
ProgramDatabaseFile=".\Release/Blocks3D.pdb"
|
|
||||||
SubSystem="2"
|
|
||||||
StackReserveSize="16777216"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
OptimizeForWindows98="2"
|
|
||||||
LinkTimeCodeGeneration="1"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\Release/Blocks3D.bsc"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory=".\Debug"
|
|
||||||
IntermediateDirectory=".\Debug"
|
|
||||||
ConfigurationType="1"
|
|
||||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
|
||||||
UseOfMFC="0"
|
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
|
||||||
CharacterSet="2"
|
|
||||||
ManagedExtensions="0"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
PreprocessorDefinitions="_DEBUG"
|
|
||||||
MkTypLibCompatible="true"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="1"
|
|
||||||
TypeLibraryName=".\Debug/Blocks3D.tlb"
|
|
||||||
HeaderFileName=""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories=".\src\include"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_ATL_STATIC_REGISTRY;NO_SDL_MAIN"
|
|
||||||
MinimalRebuild="false"
|
|
||||||
BasicRuntimeChecks="0"
|
|
||||||
RuntimeLibrary="3"
|
|
||||||
EnableFunctionLevelLinking="false"
|
|
||||||
PrecompiledHeaderFile=".\Debug/Blocks3D.pch"
|
|
||||||
AssemblerListingLocation=".\Debug/"
|
|
||||||
ObjectFile=".\Debug/"
|
|
||||||
ProgramDataBaseFileName=".\Debug/"
|
|
||||||
WarningLevel="3"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="_DEBUG"
|
|
||||||
Culture="4105"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib Urlmon.lib ole32.lib oleaut32.lib uuid.lib oded.lib"
|
|
||||||
OutputFile="./Blocks3D-Debug.exe"
|
|
||||||
LinkIncremental="2"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories=""
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
ProgramDatabaseFile=".\Debug/Blocks3D.pdb"
|
|
||||||
SubSystem="1"
|
|
||||||
StackReserveSize="16777216"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\Debug/Blocks3D.bsc"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.dll"
|
|
||||||
AssemblyName="System, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
|
|
||||||
/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.Data.dll"
|
|
||||||
AssemblyName="System.Data, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86"
|
|
||||||
/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.Drawing.dll"
|
|
||||||
AssemblyName="System.Drawing, Version=2.0.0.0, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
|
|
||||||
/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.Windows.Forms.dll"
|
|
||||||
AssemblyName="System.Windows.Forms, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
|
|
||||||
/>
|
|
||||||
<AssemblyReference
|
|
||||||
RelativePath="System.XML.dll"
|
|
||||||
AssemblyName="System.Xml, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
|
|
||||||
/>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Application.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\AudioPlayer.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\ax.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\BrowserCallHandler.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\CameraController.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\ErrorFunctions.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Globals.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\IEBrowser.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\IEDispatcher.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\main.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Mouse.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\propertyGrid.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\PropertyWindow.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Renderer.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\StringFunctions.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\TextureHandler.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\WindowFunctions.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Tool"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\ArrowTool.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\DraggerTool.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\SurfaceTool.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Tool\Tool.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Listener"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\ButtonListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\CameraButtonListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\DeleteListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\GUDButtonListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\MenuButtonListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\ModeSelectionListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\RotateButtonListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\Listener\ToolbarListener.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="DataModelV2"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\DataModelInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\GroupInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\Instance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\LevelInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\LightingInstance.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\PartInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\PVInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\SelectionService.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\SoundInstance.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\SoundService.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\ThumbnailGeneratorInstance.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\WorkspaceInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Gui"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\BaseButtonInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\BaseGuiInstance.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\GuiRootInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\ImageButtonInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\TextButtonInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\DataModelV2\ToggleImageButtonInstance.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="XplicitNgine"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\XplicitNgine\XplicitNgine.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Helpers"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\source\base64.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Application.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\AudioPlayer.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\ax.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\BrowserCallHandler.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\CameraController.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Enum.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\ErrorFunctions.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Faces.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Globals.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\IEBrowser.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\IEDispatcher.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Mouse.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\propertyGrid.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\PropertyWindow.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Renderer.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\resource.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\StringFunctions.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\TextureHandler.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\ToolEnum.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\versioning.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\VS2005CompatShim.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\win32Defines.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\WindowFunctions.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="RapidXML"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml.hpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml_iterators.hpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml_print.hpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\rapidxml\rapidxml_utils.hpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Listener"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\ButtonListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\CameraButtonListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\DeleteListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\GUDButtonListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\MenuButtonListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\ModeSelectionListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\RotateButtonListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Listener\ToolbarListener.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModel\WorkspaceInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Tool"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\ArrowTool.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\DraggerTool.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\SurfaceTool.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\Tool\Tool.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="DataModelV2"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\DataModelInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\GroupInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\Instance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\LevelInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\LightingInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\PartInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\PVInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\SelectionService.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\SoundInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\SoundService.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\ThumbnailGeneratorInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\WorkspaceInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Gui"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\BaseButtonInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\BaseGuiInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\GuiRootInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\ImageButtonInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\TextButtonInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\DataModelV2\ToggleImageButtonInstance.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="XplicitNgine"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\XplicitNgine\XplicitNgine.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Helpers"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\src\include\base64.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\Blocks3D.exe.manifest"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\Dialogs.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\icon1.ico"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\Parts.bmp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\roblox_RN1_icon.ico"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
<Global
|
|
||||||
Name="RESOURCE_FILE"
|
|
||||||
Value="Dialogs.rc"
|
|
||||||
/>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
||||||
@@ -1,10 +1,9 @@
|
|||||||
#include "DataModelV2/BaseButtonInstance.h"
|
#include "BaseButtonInstance.h"
|
||||||
#include "Listener/ButtonListener.h"
|
#include "ButtonListener.h"
|
||||||
|
|
||||||
|
|
||||||
ButtonListener::ButtonListener()
|
ButtonListener::ButtonListener()
|
||||||
{
|
{
|
||||||
doDelete = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ButtonListener::~ButtonListener(void)
|
ButtonListener::~ButtonListener(void)
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
//#include "Application.h"
|
//#include "Application.h"
|
||||||
#include "DataModelV2/BaseButtonInstance.h"
|
//#include "BaseButtonInstance.h"
|
||||||
|
|
||||||
class BaseButtonInstance;
|
class BaseButtonInstance;
|
||||||
|
|
||||||
@@ -10,7 +10,6 @@ class ButtonListener
|
|||||||
ButtonListener();
|
ButtonListener();
|
||||||
~ButtonListener(void);
|
~ButtonListener(void);
|
||||||
virtual void onButton1MouseClick(BaseButtonInstance*);
|
virtual void onButton1MouseClick(BaseButtonInstance*);
|
||||||
bool doDelete;
|
|
||||||
//virtual void onMouseOver(); //TODO
|
//virtual void onMouseOver(); //TODO
|
||||||
//virtual void onMouseOut(); //TODO
|
//virtual void onMouseOut(); //TODO
|
||||||
//virtual void onButton1MouseDown(); //TODO
|
//virtual void onButton1MouseDown(); //TODO
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "Listener/CameraButtonListener.h"
|
#include "CameraButtonListener.h"
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "AudioPlayer.h"
|
#include "AudioPlayer.h"
|
||||||
#include "Application.h"
|
#include "Application.h"
|
||||||
@@ -7,8 +7,8 @@ void CameraButtonListener::onButton1MouseClick(BaseButtonInstance* button)
|
|||||||
{
|
{
|
||||||
AudioPlayer::playSound(cameraSound);
|
AudioPlayer::playSound(cameraSound);
|
||||||
CoordinateFrame frame = g_usableApp->cameraController.getCamera()->getCoordinateFrame();
|
CoordinateFrame frame = g_usableApp->cameraController.getCamera()->getCoordinateFrame();
|
||||||
if(button->name == "CenterCam" && g_dataModel->getSelectionService()->getSelection().size() > 0)
|
if(button->name == "CenterCam" && g_selectedInstances.size() > 0)
|
||||||
g_usableApp->cameraController.centerCamera(g_dataModel->getSelectionService()->getSelection()[0]);
|
g_usableApp->cameraController.centerCamera(g_selectedInstances.at(0));
|
||||||
else if(button->name == "ZoomIn")
|
else if(button->name == "ZoomIn")
|
||||||
g_usableApp->cameraController.Zoom(1);
|
g_usableApp->cameraController.Zoom(1);
|
||||||
else if(button->name == "ZoomOut")
|
else if(button->name == "ZoomOut")
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
#include "CameraController.h"
|
#include "CameraController.h"
|
||||||
#include "win32Defines.h"
|
#include "win32Defines.h"
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include "DataModelV2/PartInstance.h"
|
#include "PartInstance.h"
|
||||||
#include "Application.h"
|
#include "Application.h"
|
||||||
#include "AudioPlayer.h"
|
#include "AudioPlayer.h"
|
||||||
|
|
||||||
@@ -57,35 +57,6 @@ void CameraController::refreshZoom(const CoordinateFrame& frame)
|
|||||||
|
|
||||||
void CameraController::pan(CoordinateFrame* frame,float spdX, float spdY)
|
void CameraController::pan(CoordinateFrame* frame,float spdX, float spdY)
|
||||||
{
|
{
|
||||||
|
|
||||||
yaw+=spdX;
|
|
||||||
pitch+=spdY;
|
|
||||||
|
|
||||||
if (pitch>1.4f) pitch=1.4f;
|
|
||||||
if (pitch<-1.4f) pitch=-1.4f;
|
|
||||||
frame->translation = Vector3(sin(-yaw)*zoom*cos(pitch),sin(pitch)*zoom,cos(-yaw)*zoom*cos(pitch))+focusPosition;
|
|
||||||
frame->lookAt(focusPosition);
|
|
||||||
}
|
|
||||||
|
|
||||||
void CameraController::panLock(CoordinateFrame* frame,float spdX, float spdY)
|
|
||||||
{
|
|
||||||
int sign = 0;
|
|
||||||
|
|
||||||
|
|
||||||
yaw = toDegrees(yaw);
|
|
||||||
if((((yaw - fmod(yaw, 45)) / 45) * 45) < 0)
|
|
||||||
{
|
|
||||||
sign = 1;
|
|
||||||
}
|
|
||||||
yaw = fabs(yaw);
|
|
||||||
yaw = ((yaw - fmod(yaw, 45)) / 45) * 45;
|
|
||||||
yaw = toRadians(yaw);
|
|
||||||
|
|
||||||
if(sign==1)
|
|
||||||
{
|
|
||||||
yaw = yaw * -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
yaw+=spdX;
|
yaw+=spdX;
|
||||||
pitch+=spdY;
|
pitch+=spdY;
|
||||||
|
|
||||||
@@ -134,14 +105,14 @@ void CameraController::Zoom(short delta)
|
|||||||
void CameraController::panLeft()
|
void CameraController::panLeft()
|
||||||
{
|
{
|
||||||
CoordinateFrame frame = g3dCamera.getCoordinateFrame();
|
CoordinateFrame frame = g3dCamera.getCoordinateFrame();
|
||||||
panLock(&frame,toRadians(-45),0);
|
pan(&frame,toRadians(-45),0);
|
||||||
setFrame(frame);
|
setFrame(frame);
|
||||||
|
|
||||||
}
|
}
|
||||||
void CameraController::panRight()
|
void CameraController::panRight()
|
||||||
{
|
{
|
||||||
CoordinateFrame frame = g3dCamera.getCoordinateFrame();
|
CoordinateFrame frame = g3dCamera.getCoordinateFrame();
|
||||||
panLock(&frame,toRadians(45),0);
|
pan(&frame,toRadians(45),0);
|
||||||
setFrame(frame);
|
setFrame(frame);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -159,11 +130,6 @@ void CameraController::tiltDown()
|
|||||||
setFrame(frame);
|
setFrame(frame);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CameraController::zoomExtents()
|
|
||||||
{
|
|
||||||
// do some weird jank math
|
|
||||||
}
|
|
||||||
|
|
||||||
void CameraController::centerCamera(Instance* selection)
|
void CameraController::centerCamera(Instance* selection)
|
||||||
{
|
{
|
||||||
CoordinateFrame frame = CoordinateFrame(g3dCamera.getCoordinateFrame().translation);
|
CoordinateFrame frame = CoordinateFrame(g3dCamera.getCoordinateFrame().translation);
|
||||||
@@ -193,8 +159,6 @@ void CameraController::update(Application* app)
|
|||||||
Vector3 cameraPos = g3dCamera.getCoordinateFrame().translation;
|
Vector3 cameraPos = g3dCamera.getCoordinateFrame().translation;
|
||||||
CoordinateFrame frame = g3dCamera.getCoordinateFrame();
|
CoordinateFrame frame = g3dCamera.getCoordinateFrame();
|
||||||
bool moving=false;
|
bool moving=false;
|
||||||
if(!app->viewportHasFocus())
|
|
||||||
return;
|
|
||||||
if(GetHoldKeyState('U')) {
|
if(GetHoldKeyState('U')) {
|
||||||
forwards = true;
|
forwards = true;
|
||||||
moving=true;
|
moving=true;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <G3DAll.h>
|
#include <G3DAll.h>
|
||||||
#include "DataModelV2/Instance.h"
|
#include "Instance.h"
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
@@ -19,14 +19,12 @@ class CameraController {
|
|||||||
void lookAt(const Vector3& position);
|
void lookAt(const Vector3& position);
|
||||||
void refreshZoom(const CoordinateFrame& frame);
|
void refreshZoom(const CoordinateFrame& frame);
|
||||||
void pan(CoordinateFrame* frame,float spdX,float spdY);
|
void pan(CoordinateFrame* frame,float spdX,float spdY);
|
||||||
void panLock(CoordinateFrame* frame,float spdX,float spdY);
|
|
||||||
void update(Application* app);
|
void update(Application* app);
|
||||||
void centerCamera(Instance* selection);
|
void centerCamera(Instance* selection);
|
||||||
void panLeft();
|
void panLeft();
|
||||||
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,87 +1,40 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
|
#include "GuiRoot.h"
|
||||||
// Instances
|
#include "DataModelInstance.h"
|
||||||
#include "DataModelV2/GuiRootInstance.h"
|
|
||||||
#include "DataModelV2/ToggleImageButtonInstance.h"
|
|
||||||
#include "DataModelV2/DataModelInstance.h"
|
|
||||||
#include "DataModelV2/ThumbnailGeneratorInstance.h"
|
|
||||||
#include "DataModelV2/LightingInstance.h"
|
|
||||||
|
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <commdlg.h>
|
#include <commdlg.h>
|
||||||
#include "ErrorFunctions.h"
|
#include "ErrorFunctions.h"
|
||||||
#include "Globals.h"
|
|
||||||
#include "Application.h"
|
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
using namespace rapidxml;
|
using namespace rapidxml;
|
||||||
|
|
||||||
|
|
||||||
DataModelInstance::DataModelInstance(void)
|
DataModelInstance::DataModelInstance(void)
|
||||||
{
|
{
|
||||||
// Instances
|
|
||||||
Instance::Instance();
|
Instance::Instance();
|
||||||
workspace = new WorkspaceInstance();
|
workspace = new WorkspaceInstance();
|
||||||
guiRoot = new GuiRootInstance();
|
guiRoot = new GuiRoot();
|
||||||
level = new LevelInstance();
|
level = new LevelInstance();
|
||||||
thumbnailGenerator = new ThumbnailGeneratorInstance();
|
//children.push_back(workspace);
|
||||||
soundService = new SoundService();
|
//children.push_back(level);
|
||||||
lightingInstance = new LightingInstance();
|
|
||||||
|
|
||||||
selectionService = new SelectionService();
|
|
||||||
selectionService->setPropertyWindow(g_usableApp->_propWindow);
|
|
||||||
className = "dataModel";
|
className = "dataModel";
|
||||||
|
mousex = 0;
|
||||||
|
mousey = 0;
|
||||||
|
mouseButton1Down = false;
|
||||||
showMessage = false;
|
showMessage = false;
|
||||||
canDelete = false;
|
canDelete = false;
|
||||||
_modY=0;
|
_modY=0;
|
||||||
|
|
||||||
// Parent stuff
|
|
||||||
workspace->setParent(this);
|
workspace->setParent(this);
|
||||||
level->setParent(this);
|
level->setParent(this);
|
||||||
soundService->setParent(this);
|
|
||||||
lightingInstance->setParent(this);
|
|
||||||
|
|
||||||
_loadedFileName="..//skooter.rbxm";
|
_loadedFileName="..//skooter.rbxm";
|
||||||
listicon = 5;
|
listicon = 5;
|
||||||
running = false;
|
|
||||||
xplicitNgine = NULL;
|
|
||||||
resetEngine();
|
|
||||||
}
|
|
||||||
|
|
||||||
void DataModelInstance::resetEngine()
|
|
||||||
{
|
|
||||||
if(xplicitNgine != NULL)
|
|
||||||
delete xplicitNgine;
|
|
||||||
xplicitNgine = new XplicitNgine();
|
|
||||||
g_xplicitNgine = xplicitNgine;
|
|
||||||
for(size_t i = 0; i < getWorkspace()->partObjects.size(); i++)
|
|
||||||
{
|
|
||||||
PartInstance* partInstance = getWorkspace()->partObjects[i];
|
|
||||||
partInstance->physBody = NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
XplicitNgine * DataModelInstance::getEngine()
|
|
||||||
{
|
|
||||||
return xplicitNgine;
|
|
||||||
}
|
|
||||||
|
|
||||||
void DataModelInstance::toggleRun()
|
|
||||||
{
|
|
||||||
running = !running;
|
|
||||||
//if(!running)
|
|
||||||
//resetEngine();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool DataModelInstance::isRunning()
|
|
||||||
{
|
|
||||||
return running;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DataModelInstance::~DataModelInstance(void)
|
DataModelInstance::~DataModelInstance(void)
|
||||||
{
|
{
|
||||||
delete xplicitNgine;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
@@ -96,16 +49,6 @@ void DataModelInstance::modXMLLevel(float modY)
|
|||||||
|
|
||||||
void DataModelInstance::clearLevel()
|
void DataModelInstance::clearLevel()
|
||||||
{
|
{
|
||||||
running = false;
|
|
||||||
Instance * goButton = this->getGuiRoot()->findFirstChild("go");
|
|
||||||
if(goButton != NULL){
|
|
||||||
if(ToggleImageButtonInstance* goButtonReal = dynamic_cast<ToggleImageButtonInstance*>(goButton))
|
|
||||||
{
|
|
||||||
goButtonReal->checked = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
selectionService->clearSelection();
|
|
||||||
selectionService->addSelected(this);
|
|
||||||
workspace->clearChildren();
|
workspace->clearChildren();
|
||||||
}
|
}
|
||||||
PartInstance* DataModelInstance::makePart()
|
PartInstance* DataModelInstance::makePart()
|
||||||
@@ -302,7 +245,7 @@ Color3 bcToRGB(short bc)
|
|||||||
bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
||||||
{
|
{
|
||||||
xml_node<> * watchFirstNode = scanNode->first_node();
|
xml_node<> * watchFirstNode = scanNode->first_node();
|
||||||
|
|
||||||
for (xml_node<> *node = scanNode->first_node();node; node = node->next_sibling())
|
for (xml_node<> *node = scanNode->first_node();node; node = node->next_sibling())
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -314,8 +257,6 @@ bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
|||||||
xml_node<> *propNode = node->first_node();
|
xml_node<> *propNode = node->first_node();
|
||||||
xml_node<> *cFrameNode=0;
|
xml_node<> *cFrameNode=0;
|
||||||
xml_node<> *sizeNode=0;
|
xml_node<> *sizeNode=0;
|
||||||
xml_node<> *anchoredNode=0;
|
|
||||||
xml_node<> *shapeNode=0;
|
|
||||||
xml_node<> *colorNode=0;
|
xml_node<> *colorNode=0;
|
||||||
xml_node<> *brickColorNode=0;
|
xml_node<> *brickColorNode=0;
|
||||||
xml_node<> *nameNode=0;
|
xml_node<> *nameNode=0;
|
||||||
@@ -326,24 +267,15 @@ bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
|||||||
{
|
{
|
||||||
std::string xmlName = attr->name();
|
std::string xmlName = attr->name();
|
||||||
std::string xmlValue = attr->value();
|
std::string xmlValue = attr->value();
|
||||||
|
|
||||||
if (xmlValue=="CFrame" | xmlValue=="CoordinateFrame")
|
if (xmlValue=="CFrame" | xmlValue=="CoordinateFrame")
|
||||||
{
|
{
|
||||||
cFrameNode = partPropNode;
|
cFrameNode = partPropNode;
|
||||||
}
|
|
||||||
if (xmlValue=="Anchored")
|
|
||||||
{
|
|
||||||
anchoredNode = partPropNode;
|
|
||||||
}
|
}
|
||||||
if (xmlValue=="Name")
|
if (xmlValue=="Name")
|
||||||
{
|
{
|
||||||
nameNode = partPropNode;
|
nameNode = partPropNode;
|
||||||
}
|
}
|
||||||
if (xmlValue=="shape")
|
|
||||||
{
|
|
||||||
shapeNode = partPropNode;
|
|
||||||
_legacyLoad=false;
|
|
||||||
}
|
|
||||||
if (xmlValue=="Color")
|
if (xmlValue=="Color")
|
||||||
{
|
{
|
||||||
colorNode=partPropNode;
|
colorNode=partPropNode;
|
||||||
@@ -365,11 +297,6 @@ bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
|||||||
{
|
{
|
||||||
std::string xmlName = attr->name();
|
std::string xmlName = attr->name();
|
||||||
std::string xmlValue = attr->value();
|
std::string xmlValue = attr->value();
|
||||||
if (xmlValue=="shape")
|
|
||||||
{
|
|
||||||
shapeNode = featureNode;
|
|
||||||
_legacyLoad=true;
|
|
||||||
}
|
|
||||||
if (xmlValue=="size")
|
if (xmlValue=="size")
|
||||||
{
|
{
|
||||||
sizeNode=featureNode;
|
sizeNode=featureNode;
|
||||||
@@ -400,21 +327,7 @@ bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
|||||||
G = getFloatValue(colorNode,"G");
|
G = getFloatValue(colorNode,"G");
|
||||||
B = getFloatValue(colorNode,"B");
|
B = getFloatValue(colorNode,"B");
|
||||||
}
|
}
|
||||||
|
|
||||||
Enum::Shape::Value partshape = Enum::Shape::Block;
|
|
||||||
std::string pshape = shapeNode->value();
|
|
||||||
if (shapeNode)
|
|
||||||
{
|
|
||||||
if(pshape == "0" || pshape == "Ball"){
|
|
||||||
partshape = Enum::Shape::Ball;
|
|
||||||
}
|
|
||||||
if(pshape == "1" || pshape == "Block"){
|
|
||||||
partshape = Enum::Shape::Block;
|
|
||||||
}
|
|
||||||
if(pshape == "2" || pshape == "Cylinder"){
|
|
||||||
partshape = Enum::Shape::Cylinder;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string newName = nameNode->value();
|
std::string newName = nameNode->value();
|
||||||
float X = getFloatValue(cFrameNode,"X");
|
float X = getFloatValue(cFrameNode,"X");
|
||||||
@@ -440,22 +353,17 @@ bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
|||||||
PartInstance* test = makePart();
|
PartInstance* test = makePart();
|
||||||
test->setParent(getWorkspace());
|
test->setParent(getWorkspace());
|
||||||
test->color = Color3(R,G,B);
|
test->color = Color3(R,G,B);
|
||||||
test->shape = partshape;
|
|
||||||
if(brickColorNode)
|
if(brickColorNode)
|
||||||
{
|
{
|
||||||
test->color = bcToRGB(atoi(brickColorNode->value()));
|
test->color = bcToRGB(atoi(brickColorNode->value()));
|
||||||
}
|
}
|
||||||
if(anchoredNode)
|
|
||||||
{
|
|
||||||
test->setAnchored(stricmp(anchoredNode->value(), "true") == 0);
|
|
||||||
}
|
|
||||||
test->setSize(Vector3(sizeX,sizeY+_modY,sizeZ));
|
test->setSize(Vector3(sizeX,sizeY+_modY,sizeZ));
|
||||||
test->setName(newName);
|
test->setName(newName);
|
||||||
CoordinateFrame cf;
|
CoordinateFrame cf;
|
||||||
|
|
||||||
if (_legacyLoad)
|
if (_legacyLoad)
|
||||||
{
|
{
|
||||||
|
|
||||||
cf = CoordinateFrame(Vector3(-X,Y,Z))*CoordinateFrame(Vector3(-sizeX/2,(sizeY+_modY)/2,sizeZ/2)*Matrix3(R00,R01,R02,R10,R11,R12,R20,R21,R22));
|
cf = CoordinateFrame(Vector3(-X,Y,Z))*CoordinateFrame(Vector3(-sizeX/2,(sizeY+_modY)/2,sizeZ/2)*Matrix3(R00,R01,R02,R10,R11,R12,R20,R21,R22));
|
||||||
cf.rotation = Matrix3(R00,R01,R02,R10,R11,R12,R20,R21,R22);
|
cf.rotation = Matrix3(R00,R01,R02,R10,R11,R12,R20,R21,R22);
|
||||||
}
|
}
|
||||||
@@ -464,13 +372,14 @@ bool DataModelInstance::scanXMLObject(xml_node<> * scanNode)
|
|||||||
cf.translation = Vector3(X,Y,Z);
|
cf.translation = Vector3(X,Y,Z);
|
||||||
cf.rotation = Matrix3(R00,R01,R02,R10,R11,R12,R20,R21,R22);
|
cf.rotation = Matrix3(R00,R01,R02,R10,R11,R12,R20,R21,R22);
|
||||||
}
|
}
|
||||||
|
|
||||||
test->setCFrame(cf);
|
test->setCFrame(cf);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
@@ -500,9 +409,6 @@ bool DataModelInstance::load(const char* filename, bool clearObjects)
|
|||||||
std::string hname = sfilename.substr(begin);
|
std::string hname = sfilename.substr(begin);
|
||||||
std::string tname = hname.substr(0, hname.length() - 5);
|
std::string tname = hname.substr(0, hname.length() - 5);
|
||||||
name = tname;
|
name = tname;
|
||||||
resetEngine();
|
|
||||||
selectionService->clearSelection();
|
|
||||||
selectionService->addSelected(this);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -510,28 +416,6 @@ bool DataModelInstance::load(const char* filename, bool clearObjects)
|
|||||||
std::stringstream msg;
|
std::stringstream msg;
|
||||||
msg << "Failed to load file:" << std::endl << filename << std::endl << strerror(errno);
|
msg << "Failed to load file:" << std::endl << filename << std::endl << strerror(errno);
|
||||||
MessageBoxStr(msg.str());
|
MessageBoxStr(msg.str());
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool DataModelInstance::loadModel(const char* filename)
|
|
||||||
{
|
|
||||||
ifstream levelFile(filename,ios::binary);
|
|
||||||
if (levelFile)
|
|
||||||
{
|
|
||||||
readXMLFileStream(&levelFile);
|
|
||||||
|
|
||||||
//resetEngine();
|
|
||||||
selectionService->clearSelection();
|
|
||||||
selectionService->addSelected(this);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
std::stringstream msg;
|
|
||||||
msg << "Failed to load file:" << std::endl << filename << std::endl << strerror(errno);
|
|
||||||
MessageBoxStr(msg.str());
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -593,7 +477,7 @@ bool DataModelInstance::getOpen()
|
|||||||
of.lpstrFile = szFile ;
|
of.lpstrFile = szFile ;
|
||||||
of.lpstrFile[0]='\0';
|
of.lpstrFile[0]='\0';
|
||||||
of.nMaxFile=500;
|
of.nMaxFile=500;
|
||||||
of.lpstrTitle="Open";
|
of.lpstrTitle="Hello";
|
||||||
of.Flags = OFN_FILEMUSTEXIST;
|
of.Flags = OFN_FILEMUSTEXIST;
|
||||||
ShowCursor(TRUE);
|
ShowCursor(TRUE);
|
||||||
BOOL file = GetOpenFileName(&of);
|
BOOL file = GetOpenFileName(&of);
|
||||||
@@ -604,30 +488,6 @@ bool DataModelInstance::getOpen()
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DataModelInstance::getOpenModel()
|
|
||||||
{
|
|
||||||
_modY=0;
|
|
||||||
OPENFILENAME of;
|
|
||||||
ZeroMemory( &of , sizeof( of));
|
|
||||||
of.lStructSize = sizeof(OPENFILENAME);
|
|
||||||
of.lpstrFilter = "Roblox Files\0*.rbxm;*.rbxl\0\0";
|
|
||||||
char szFile[512];
|
|
||||||
of.lpstrFile = szFile ;
|
|
||||||
of.lpstrFile[0]='\0';
|
|
||||||
of.nMaxFile=500;
|
|
||||||
of.lpstrTitle="Open";
|
|
||||||
of.Flags = OFN_FILEMUSTEXIST;
|
|
||||||
ShowCursor(TRUE);
|
|
||||||
BOOL file = GetOpenFileName(&of);
|
|
||||||
if (file)
|
|
||||||
{
|
|
||||||
_loadedFileName = of.lpstrFile;
|
|
||||||
loadModel(of.lpstrFile);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void DataModelInstance::setMessage(std::string msg)
|
void DataModelInstance::setMessage(std::string msg)
|
||||||
{
|
{
|
||||||
message = msg;
|
message = msg;
|
||||||
@@ -667,9 +527,9 @@ void DataModelInstance::drawMessage(RenderDevice* rd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
char brkc[12];
|
char brkc[12];
|
||||||
_snprintf(brkc, 12, "%d", brickCount);
|
sprintf_s(brkc, "%d", brickCount);
|
||||||
char instc[12];
|
char instc[12];
|
||||||
_snprintf(instc, 12, "%d", instCount);
|
sprintf_s(instc, "%d", instCount);
|
||||||
message = "Bricks: ";
|
message = "Bricks: ";
|
||||||
message += brkc;
|
message += brkc;
|
||||||
message += " Snaps: ";
|
message += " Snaps: ";
|
||||||
@@ -690,33 +550,27 @@ WorkspaceInstance* DataModelInstance::getWorkspace()
|
|||||||
{
|
{
|
||||||
return workspace;
|
return workspace;
|
||||||
}
|
}
|
||||||
|
Vector2 DataModelInstance::getMousePos()
|
||||||
GuiRootInstance* DataModelInstance::getGuiRoot()
|
{
|
||||||
|
return Vector2(mousex,mousey);
|
||||||
|
}
|
||||||
|
void DataModelInstance::setMousePos(int x,int y)
|
||||||
|
{
|
||||||
|
mousex=x;
|
||||||
|
mousey=y;
|
||||||
|
}
|
||||||
|
void DataModelInstance::setMousePos(Vector2 pos)
|
||||||
|
{
|
||||||
|
mousex=pos.x;
|
||||||
|
mousey=pos.y;
|
||||||
|
}
|
||||||
|
GuiRoot* DataModelInstance::getGuiRoot()
|
||||||
{
|
{
|
||||||
return guiRoot;
|
return guiRoot;
|
||||||
}
|
}
|
||||||
|
|
||||||
SelectionService* DataModelInstance::getSelectionService()
|
|
||||||
{
|
|
||||||
return selectionService;
|
|
||||||
}
|
|
||||||
|
|
||||||
LevelInstance* DataModelInstance::getLevel()
|
LevelInstance* DataModelInstance::getLevel()
|
||||||
{
|
{
|
||||||
return level;
|
return level;
|
||||||
}
|
|
||||||
|
|
||||||
ThumbnailGeneratorInstance* DataModelInstance::getThumbnailGenerator()
|
|
||||||
{
|
|
||||||
return thumbnailGenerator;
|
|
||||||
}
|
|
||||||
|
|
||||||
SoundService* DataModelInstance::getSoundService()
|
|
||||||
{
|
|
||||||
return soundService;
|
|
||||||
}
|
|
||||||
|
|
||||||
LightingInstance* DataModelInstance::getLighting()
|
|
||||||
{
|
|
||||||
return lightingInstance;
|
|
||||||
}
|
}
|
||||||
@@ -1,20 +1,11 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
// Instances
|
|
||||||
#include "WorkspaceInstance.h"
|
#include "WorkspaceInstance.h"
|
||||||
#include "LevelInstance.h"
|
#include "LevelInstance.h"
|
||||||
#include "PartInstance.h"
|
#include "PartInstance.h"
|
||||||
#include "SelectionService.h"
|
|
||||||
#include "GuiRootInstance.h"
|
|
||||||
#include "ThumbnailGeneratorInstance.h"
|
|
||||||
#include "XplicitNgine/XplicitNgine.h"
|
|
||||||
#include "SoundService.h"
|
|
||||||
#include "LightingInstance.h"
|
|
||||||
|
|
||||||
// Libraries
|
|
||||||
#include "rapidxml/rapidxml.hpp"
|
#include "rapidxml/rapidxml.hpp"
|
||||||
|
#include "GuiRoot.h"
|
||||||
|
|
||||||
class GuiRootInstance;
|
class GuiRoot;
|
||||||
|
|
||||||
class DataModelInstance :
|
class DataModelInstance :
|
||||||
public Instance
|
public Instance
|
||||||
@@ -27,31 +18,27 @@ public:
|
|||||||
void clearMessage();
|
void clearMessage();
|
||||||
bool debugGetOpen();
|
bool debugGetOpen();
|
||||||
bool getOpen();
|
bool getOpen();
|
||||||
bool getOpenModel();
|
|
||||||
bool load(const char* filename,bool clearObjects);
|
bool load(const char* filename,bool clearObjects);
|
||||||
bool loadModel(const char* filename);
|
|
||||||
bool readXMLFileStream(std::ifstream* file);
|
bool readXMLFileStream(std::ifstream* file);
|
||||||
void drawMessage(RenderDevice*);
|
void drawMessage(RenderDevice*);
|
||||||
|
WorkspaceInstance* getWorkspace();
|
||||||
// Instance getters
|
WorkspaceInstance* workspace;
|
||||||
WorkspaceInstance* getWorkspace();
|
LevelInstance * level;
|
||||||
LevelInstance* getLevel();
|
LevelInstance * getLevel();
|
||||||
XplicitNgine* getEngine();
|
GuiRoot* guiRoot;
|
||||||
ThumbnailGeneratorInstance* getThumbnailGenerator();
|
|
||||||
SoundService* getSoundService();
|
|
||||||
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();
|
GuiRoot* getGuiRoot();
|
||||||
SelectionService* getSelectionService();
|
float mousex;
|
||||||
|
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();
|
|
||||||
bool isRunning();
|
|
||||||
void resetEngine();
|
|
||||||
#if _DEBUG
|
#if _DEBUG
|
||||||
void modXMLLevel(float modY);
|
void modXMLLevel(float modY);
|
||||||
#endif
|
#endif
|
||||||
@@ -64,16 +51,4 @@ private:
|
|||||||
std::string _errMsg;
|
std::string _errMsg;
|
||||||
bool _legacyLoad;
|
bool _legacyLoad;
|
||||||
float _modY;
|
float _modY;
|
||||||
|
|
||||||
// Instances
|
|
||||||
WorkspaceInstance* workspace;
|
|
||||||
LevelInstance* level;
|
|
||||||
GuiRootInstance* guiRoot;
|
|
||||||
SelectionService* selectionService;
|
|
||||||
ThumbnailGeneratorInstance* thumbnailGenerator;
|
|
||||||
XplicitNgine* xplicitNgine;
|
|
||||||
SoundService* soundService;
|
|
||||||
LightingInstance* lightingInstance;
|
|
||||||
bool running;
|
|
||||||
|
|
||||||
};
|
};
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "Listener/DeleteListener.h"
|
#include "DeleteListener.h"
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "Application.h"
|
#include "Application.h"
|
||||||
|
|
||||||
BIN
Dialogs.aps
Normal file
BIN
Dialogs.aps
Normal file
Binary file not shown.
129
Dialogs.rc
129
Dialogs.rc
@@ -1,86 +1,43 @@
|
|||||||
// Generated by ResEdit 1.6.6
|
// Generated by ResEdit 1.6.6
|
||||||
// Copyright (C) 2006-2015
|
// Copyright (C) 2006-2015
|
||||||
// http://www.resedit.net
|
// http://www.resedit.net
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <commctrl.h>
|
#include <commctrl.h>
|
||||||
#include <richedit.h>
|
#include <richedit.h>
|
||||||
#include "src/include/resource.h"
|
#include "resource.h"
|
||||||
#include "src/include/versioning.h"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
//
|
// Bitmap resources
|
||||||
// Bitmap resources
|
//
|
||||||
//
|
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
||||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
IDB_BITMAP1 BITMAP "Parts.bmp"
|
||||||
IDB_BITMAP1 BITMAP "Parts.bmp"
|
|
||||||
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
|
||||||
1 VERSIONINFO
|
//
|
||||||
FILEVERSION APP_GENER,APP_MAJOR,APP_MINOR,APP_PATCH
|
// Dialog resources
|
||||||
PRODUCTVERSION APP_GENER,APP_MAJOR,APP_MINOR,APP_PATCH
|
//
|
||||||
FILEOS VOS__WINDOWS32
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
FILETYPE VFT_APP
|
IDD_DIALOG1 DIALOG 0, 0, 295, 43
|
||||||
FILESUBTYPE VFT2_UNKNOWN
|
STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SETFOREGROUND | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU
|
||||||
FILEFLAGSMASK 0
|
EXSTYLE WS_EX_WINDOWEDGE
|
||||||
FILEFLAGS 0
|
CAPTION "Insert Object"
|
||||||
{
|
FONT 8, "Ms Shell Dlg"
|
||||||
BLOCK "StringFileInfo"
|
{
|
||||||
{
|
EDITTEXT IDE_EDIT, 35, 6, 195, 14, ES_AUTOHSCROLL, WS_EX_LEFT
|
||||||
BLOCK "100901B5"
|
LTEXT "Class:", 0, 10, 9, 20, 9, SS_LEFT, WS_EX_LEFT
|
||||||
{
|
PUSHBUTTON "Cancel", IDCANCEL, 237, 24, 50, 14, 0, WS_EX_LEFT
|
||||||
VALUE "Comments", ""
|
DEFPUSHBUTTON "OK", IDOK, 237, 6, 50, 14, 0, WS_EX_LEFT
|
||||||
VALUE "CompanyName", "Blocks3D Team"
|
}
|
||||||
VALUE "FileDescription", "Blocks 3D"
|
|
||||||
VALUE "FileVersion", VER_STR(APP_VER_STRING)
|
|
||||||
VALUE "InternalName", "Blocks3D"
|
|
||||||
VALUE "LegalCopyright", "Blocks3D Team 2018-2023"
|
//
|
||||||
VALUE "LegalTrademarks", ""
|
// Icon resources
|
||||||
VALUE "OriginalFilename", "Blocks3D.exe"
|
//
|
||||||
VALUE "PrivateBuild", ""
|
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
||||||
VALUE "ProductName", "Blocks3D"
|
IDI_ICON1 ICON "icon1.ico"
|
||||||
VALUE "ProductVersion", VER_STR(APP_VER_STRING)
|
|
||||||
VALUE "SpecialBuild", ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
BLOCK "VarFileInfo"
|
|
||||||
{
|
|
||||||
VALUE "Translation", 0x1009, 0x01B5
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Dialog resources
|
|
||||||
//
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
|
||||||
IDD_DIALOG1 DIALOG 0, 0, 295, 43
|
|
||||||
STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SETFOREGROUND | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU
|
|
||||||
EXSTYLE WS_EX_WINDOWEDGE
|
|
||||||
CAPTION "Insert Object"
|
|
||||||
FONT 8, "Ms Shell Dlg"
|
|
||||||
{
|
|
||||||
EDITTEXT IDC_EDIT1, 35, 6, 195, 14, ES_AUTOHSCROLL, WS_EX_LEFT
|
|
||||||
LTEXT "Class:", 0, 10, 9, 20, 9, SS_LEFT, WS_EX_LEFT
|
|
||||||
PUSHBUTTON "Cancel", IDCANCEL, 237, 24, 50, 14, 0, WS_EX_LEFT
|
|
||||||
DEFPUSHBUTTON "OK", IDOK, 237, 6, 50, 14, 0, WS_EX_LEFT
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Icon resources
|
|
||||||
//
|
|
||||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_CAN
|
|
||||||
IDI_ICON1 ICON "FatB3dIcon.ico"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Manifest resources
|
|
||||||
//
|
|
||||||
#ifndef _DEBUG
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
|
||||||
1 MANIFEST ".\\Blocks3D.exe.manifest"
|
|
||||||
#endif
|
|
||||||
|
|||||||
13
Documentation/index.html
Normal file
13
Documentation/index.html
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title> RBX05R Documentation </title>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="content" style="text-align:center;">
|
||||||
|
<h1> ROBLOX 2005 Recreation documentation </h1>
|
||||||
|
<br>
|
||||||
|
<h4> Current for: r360 </h4>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
17
Enum.h
Normal file
17
Enum.h
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace Enum
|
||||||
|
{
|
||||||
|
namespace SurfaceType
|
||||||
|
{
|
||||||
|
enum Value {
|
||||||
|
Smooth, Snaps, Inlets, Glue, Weld, Spawn, Hinge, Motor, Bumps
|
||||||
|
};
|
||||||
|
}
|
||||||
|
namespace Shape
|
||||||
|
{
|
||||||
|
enum Value {
|
||||||
|
Ball = 0, Block = 1, Cylinder = 2
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
16
Enums.h
Normal file
16
Enums.h
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#ifdef UENUMS
|
||||||
|
#ifndef ENUM_H
|
||||||
|
#define ENUM_H
|
||||||
|
static enum BinType {GameTool, Grab, Clone, Hammer};
|
||||||
|
static enum ControllerType {None, KeyboardRight, KeyboardLeft, Joypad1, Joypad2, Chase, Flee};
|
||||||
|
//static enum JointType {UNK0, WeldJoint, SnapJoint, UNK3, Rotate, RotateP, RotateV, GlueJoint, UNK8, UNK9, None};
|
||||||
|
static enum ActionType {Nothing, Pause, Lose, Draw, Win};
|
||||||
|
static enum AffectType {NoChange, Increase, Decrease};
|
||||||
|
static enum InputType {NoInput, LeftTread, RightTread, Steer, Throtle, UpDown, Action1, Action2, Action3, Action4, Action5, Constant, Sin};
|
||||||
|
//static enum SurfaceConstraint {None, Hinge, SteppingMotor, Motor};
|
||||||
|
static enum SurfaceType{Smooth, Snaps, Inlets, Glue, Weld, Spawn, Hinge, Motor, Bumps};
|
||||||
|
static enum SoundType {NoSound, Boing, Bomb, Break, Click, Clock, Slingshot, Page, Ping, Snap, Splat, Step, StepOn, Swoosh, Victory};
|
||||||
|
static enum PartType {Ball, Block, Cylinder};
|
||||||
|
static enum KeywordFilterType {Include, Exclude};
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
@@ -3,11 +3,13 @@
|
|||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void OnError(int err, std::string msg)
|
void OnError(int err, std::string msg)
|
||||||
{
|
{
|
||||||
std::string emsg = "An unexpected error has occured and "+g_appName+" has to quit. We're sorry!" + msg;
|
//g_usableApp->window()->setInputCaptureCount(0);
|
||||||
std::string title = g_appName+" Crash";
|
//g_usableApp->window()->setMouseVisible(true);
|
||||||
|
std::string emsg = "An unexpected error has occured and "+g_PlaceholderName+" has to quit. We're sorry!" + msg;
|
||||||
|
std::string title = g_PlaceholderName+"Crash";
|
||||||
|
//clearInstances();
|
||||||
MessageBox(NULL, emsg.c_str(), title.c_str(), MB_OK);
|
MessageBox(NULL, emsg.c_str(), title.c_str(), MB_OK);
|
||||||
exit(err);
|
exit(err);
|
||||||
}
|
}
|
||||||
@@ -15,13 +17,13 @@ void OnError(int err, std::string msg)
|
|||||||
|
|
||||||
void MessageBoxStr(std::string msg)
|
void MessageBoxStr(std::string msg)
|
||||||
{
|
{
|
||||||
std::string title = g_appName;
|
std::string title = g_PlaceholderName;
|
||||||
MessageBox(NULL, msg.c_str(), title.c_str(), MB_OK);
|
MessageBox(NULL, msg.c_str(), title.c_str(), MB_OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessageBoxStream(std::stringstream msg)
|
void MessageBoxStream(std::stringstream msg)
|
||||||
{
|
{
|
||||||
std::string strMsg = msg.str();
|
std::string strMsg = msg.str();
|
||||||
std::string title = g_appName;
|
std::string title = g_PlaceholderName;
|
||||||
MessageBox(NULL, strMsg.c_str(), title.c_str(), MB_OK);
|
MessageBox(NULL, strMsg.c_str(), title.c_str(), MB_OK);
|
||||||
}
|
}
|
||||||
BIN
FatB3dIcon.ico
BIN
FatB3dIcon.ico
Binary file not shown.
|
Before Width: | Height: | Size: 108 KiB |
BIN
G3DTest.aps
Normal file
BIN
G3DTest.aps
Normal file
Binary file not shown.
@@ -1,24 +1,24 @@
|
|||||||
# Microsoft Developer Studio Project File - Name="Blocks3D" - Package Owner=<4>
|
# Microsoft Developer Studio Project File - Name="G3DTest" - Package Owner=<4>
|
||||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||||
# ** DO NOT EDIT **
|
# ** DO NOT EDIT **
|
||||||
|
|
||||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||||
|
|
||||||
CFG=Blocks3D - Win32 Debug
|
CFG=G3DTest - Win32 Debug
|
||||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||||
!MESSAGE use the Export Makefile command and run
|
!MESSAGE use the Export Makefile command and run
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE NMAKE /f "Blocks3D.mak".
|
!MESSAGE NMAKE /f "G3DTest.mak".
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE You can specify a configuration when running NMAKE
|
!MESSAGE You can specify a configuration when running NMAKE
|
||||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE NMAKE /f "Blocks3D.mak" CFG="Blocks3D - Win32 Debug"
|
!MESSAGE NMAKE /f "G3DTest.mak" CFG="G3DTest - Win32 Debug"
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE Possible choices for configuration are:
|
!MESSAGE Possible choices for configuration are:
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE "Blocks3D - Win32 Release" (based on "Win32 (x86) Application")
|
!MESSAGE "G3DTest - Win32 Release" (based on "Win32 (x86) Application")
|
||||||
!MESSAGE "Blocks3D - Win32 Debug" (based on "Win32 (x86) Application")
|
!MESSAGE "G3DTest - Win32 Debug" (based on "Win32 (x86) Application")
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
|
|
||||||
# Begin Project
|
# Begin Project
|
||||||
@@ -29,7 +29,7 @@ CPP=cl.exe
|
|||||||
MTL=midl.exe
|
MTL=midl.exe
|
||||||
RSC=rc.exe
|
RSC=rc.exe
|
||||||
|
|
||||||
!IF "$(CFG)" == "Blocks3D - Win32 Release"
|
!IF "$(CFG)" == "G3DTest - Win32 Release"
|
||||||
|
|
||||||
# PROP BASE Use_MFC 0
|
# PROP BASE Use_MFC 0
|
||||||
# PROP BASE Use_Debug_Libraries 0
|
# PROP BASE Use_Debug_Libraries 0
|
||||||
@@ -54,7 +54,7 @@ LINK32=link.exe
|
|||||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||||
|
|
||||||
!ELSEIF "$(CFG)" == "Blocks3D - Win32 Debug"
|
!ELSEIF "$(CFG)" == "G3DTest - Win32 Debug"
|
||||||
|
|
||||||
# PROP BASE Use_MFC 0
|
# PROP BASE Use_MFC 0
|
||||||
# PROP BASE Use_Debug_Libraries 1
|
# PROP BASE Use_Debug_Libraries 1
|
||||||
@@ -83,8 +83,8 @@ LINK32=link.exe
|
|||||||
|
|
||||||
# Begin Target
|
# Begin Target
|
||||||
|
|
||||||
# Name "Blocks3D - Win32 Release"
|
# Name "G3DTest - Win32 Release"
|
||||||
# Name "Blocks3D - Win32 Debug"
|
# Name "G3DTest - Win32 Debug"
|
||||||
# Begin Group "Source Files"
|
# Begin Group "Source Files"
|
||||||
|
|
||||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
@@ -3,7 +3,7 @@ Microsoft Developer Studio Workspace File, Format Version 6.00
|
|||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
Project: "Blocks3D"=.\Blocks3D.dsp - Package Owner=<4>
|
Project: "G3DTest"=.\G3DTest.dsp - Package Owner=<4>
|
||||||
|
|
||||||
Package=<5>
|
Package=<5>
|
||||||
{{{
|
{{{
|
||||||
BIN
G3DTest.opt
Normal file
BIN
G3DTest.opt
Normal file
Binary file not shown.
32
G3DTest.plg
Normal file
32
G3DTest.plg
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<html>
|
||||||
|
<body>
|
||||||
|
<pre>
|
||||||
|
<h1>Build Log</h1>
|
||||||
|
<h3>
|
||||||
|
--------------------Configuration: G3DTest - Win32 Debug--------------------
|
||||||
|
</h3>
|
||||||
|
<h3>Command Lines</h3>
|
||||||
|
Creating temporary file "C:\Users\Andreja\AppData\Local\Temp\RSPFD70.tmp" with contents
|
||||||
|
[
|
||||||
|
/nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /Fp"Debug/G3DTest.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
|
||||||
|
"C:\USERS\ANDREJA\G3D\G3DTest\main.cpp"
|
||||||
|
]
|
||||||
|
Creating command line "cl.exe @C:\Users\Andreja\AppData\Local\Temp\RSPFD70.tmp"
|
||||||
|
Creating temporary file "C:\Users\Andreja\AppData\Local\Temp\RSPFD71.tmp" with contents
|
||||||
|
[
|
||||||
|
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /incremental:yes /pdb:"Debug/G3DTest.pdb" /debug /machine:I386 /out:"Debug/G3DTest.exe" /pdbtype:sept
|
||||||
|
.\Debug\main.obj
|
||||||
|
]
|
||||||
|
Creating command line "link.exe @C:\Users\Andreja\AppData\Local\Temp\RSPFD71.tmp"
|
||||||
|
<h3>Output Window</h3>
|
||||||
|
Compiling...
|
||||||
|
main.cpp
|
||||||
|
Linking...
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Results</h3>
|
||||||
|
G3DTest.exe - 0 error(s), 0 warning(s)
|
||||||
|
</pre>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
Microsoft Visual Studio Solution File, Format Version 9.00
|
||||||
# Visual C++ Express 2005
|
# Visual C++ Express 2005
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks3D", "Blocks3D.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "G3DTest", "G3DTest.vcproj", "{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
579
G3DTest.vcproj
Normal file
579
G3DTest.vcproj
Normal file
@@ -0,0 +1,579 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="8.00"
|
||||||
|
Name="G3DTest"
|
||||||
|
ProjectGUID="{6C4D6EEF-B1D1-456A-B850-92CAB17124BE}"
|
||||||
|
RootNamespace="G3DTest"
|
||||||
|
>
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"
|
||||||
|
/>
|
||||||
|
</Platforms>
|
||||||
|
<ToolFiles>
|
||||||
|
</ToolFiles>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Release|Win32"
|
||||||
|
OutputDirectory=".\Release"
|
||||||
|
IntermediateDirectory=".\Release"
|
||||||
|
ConfigurationType="1"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
UseOfATL="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
MkTypLibCompatible="true"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
TargetEnvironment="1"
|
||||||
|
TypeLibraryName=".\Release/G3DTest.tlb"
|
||||||
|
HeaderFileName=""
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
|
||||||
|
StringPooling="true"
|
||||||
|
RuntimeLibrary="2"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
PrecompiledHeaderFile=".\Release/G3DTest.pch"
|
||||||
|
AssemblerListingLocation=".\Release/"
|
||||||
|
ObjectFile=".\Release/"
|
||||||
|
ProgramDataBaseFileName=".\Release/"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="4105"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLinkerTool"
|
||||||
|
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib"
|
||||||
|
OutputFile="./G3DTest.exe"
|
||||||
|
LinkIncremental="1"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
ProgramDatabaseFile=".\Release/G3DTest.pdb"
|
||||||
|
SubSystem="2"
|
||||||
|
TargetMachine="1"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManifestTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
OutputFile=".\Release/G3DTest.bsc"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAppVerifierTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebDeploymentTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Debug|Win32"
|
||||||
|
OutputDirectory=".\Debug"
|
||||||
|
IntermediateDirectory=".\Debug"
|
||||||
|
ConfigurationType="1"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="0"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
MkTypLibCompatible="true"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
TargetEnvironment="1"
|
||||||
|
TypeLibraryName=".\Debug/G3DTest.tlb"
|
||||||
|
HeaderFileName=""
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
|
||||||
|
MinimalRebuild="false"
|
||||||
|
BasicRuntimeChecks="0"
|
||||||
|
RuntimeLibrary="3"
|
||||||
|
EnableFunctionLevelLinking="false"
|
||||||
|
PrecompiledHeaderFile=".\Debug/G3DTest.pch"
|
||||||
|
AssemblerListingLocation=".\Debug/"
|
||||||
|
ObjectFile=".\Debug/"
|
||||||
|
ProgramDataBaseFileName=".\Debug/"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="3"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
Culture="4105"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLinkerTool"
|
||||||
|
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib"
|
||||||
|
OutputFile="./G3DTest-Debug.exe"
|
||||||
|
LinkIncremental="2"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
GenerateDebugInformation="true"
|
||||||
|
ProgramDatabaseFile=".\Debug/G3DTest.pdb"
|
||||||
|
SubSystem="1"
|
||||||
|
TargetMachine="1"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManifestTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
OutputFile=".\Debug/G3DTest.bsc"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAppVerifierTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebDeploymentTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
<AssemblyReference
|
||||||
|
RelativePath="System.dll"
|
||||||
|
AssemblyName="System, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
|
||||||
|
/>
|
||||||
|
<AssemblyReference
|
||||||
|
RelativePath="System.Data.dll"
|
||||||
|
AssemblyName="System.Data, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86"
|
||||||
|
/>
|
||||||
|
<AssemblyReference
|
||||||
|
RelativePath="System.Drawing.dll"
|
||||||
|
AssemblyName="System.Drawing, Version=2.0.0.0, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
|
||||||
|
/>
|
||||||
|
<AssemblyReference
|
||||||
|
RelativePath="System.Windows.Forms.dll"
|
||||||
|
AssemblyName="System.Windows.Forms, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
|
||||||
|
/>
|
||||||
|
<AssemblyReference
|
||||||
|
RelativePath="System.XML.dll"
|
||||||
|
AssemblyName="System.Xml, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
|
||||||
|
/>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
<Filter
|
||||||
|
Name="Source Files"
|
||||||
|
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Application.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\AudioPlayer.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ax.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\BrowserCallHandler.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ButtonListener.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\CameraController.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ErrorFunctions.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Globals.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\GroupInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\GuiRoot.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\IEBrowser.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\IEDispatcher.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="main.cpp"
|
||||||
|
>
|
||||||
|
<FileConfiguration
|
||||||
|
Name="Release|Win32"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
PreprocessorDefinitions=""
|
||||||
|
/>
|
||||||
|
</FileConfiguration>
|
||||||
|
<FileConfiguration
|
||||||
|
Name="Debug|Win32"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
PreprocessorDefinitions=""
|
||||||
|
/>
|
||||||
|
</FileConfiguration>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\propertyGrid.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\PropertyWindow.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\StringFunctions.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\WindowFunctions.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<Filter
|
||||||
|
Name="Instance"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\BaseButtonInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\DataModelInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ImageButtonInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Instance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\LevelInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\PartInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\PVInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\TextButtonInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\WorkspaceInstance.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Listeners"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\CameraButtonListener.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\DeleteListener.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\GUDButtonListener.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ModeSelectionListener.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\RotateButtonListener.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Header Files"
|
||||||
|
Filter="h;hpp;hxx;hm;inl"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Application.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\AudioPlayer.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ax.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\BrowserCallHandler.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\CameraController.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Demo.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Enum.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Enums.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ErrorFunctions.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Globals.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\GuiRoot.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\IEBrowser.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\IEDispatcher.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\LevelInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\propertyGrid.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\PropertyWindow.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\rapidxml\rapidxml.hpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\rapidxml\rapidxml_iterators.hpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\rapidxml\rapidxml_print.hpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\rapidxml\rapidxml_utils.hpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\resource.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\RotateButtonListener.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\StringFunctions.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\win32Defines.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\WindowFunctions.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<Filter
|
||||||
|
Name="Instance"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\BaseButtonInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\DataModelInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\GroupInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ImageButtonInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Instance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\PartInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\PVInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\TextButtonInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\WorkspaceInstance.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Listeners"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ButtonListener.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\CameraButtonListener.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\DeleteListener.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\GUDButtonListener.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\ModeSelectionListener.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Resource Files"
|
||||||
|
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Dialogs.rc"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\icon1.ico"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Parts.bmp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
<Global
|
||||||
|
Name="RESOURCE_FILE"
|
||||||
|
Value="Dialogs.rc"
|
||||||
|
/>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
||||||
40
GUDButtonListener.cpp
Normal file
40
GUDButtonListener.cpp
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
#include <G3DAll.h>
|
||||||
|
#include "Application.h"
|
||||||
|
#include "Globals.h"
|
||||||
|
#include "AudioPlayer.h"
|
||||||
|
#include "GUDButtonListener.h"
|
||||||
|
|
||||||
|
void GUDButtonListener::onButton1MouseClick(BaseButtonInstance* button)
|
||||||
|
{
|
||||||
|
bool cont = false;
|
||||||
|
for(size_t i = 0; i < g_selectedInstances.size(); i++)
|
||||||
|
if(g_selectedInstances.at(i)->canDelete)
|
||||||
|
{
|
||||||
|
cont = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if(cont)
|
||||||
|
{
|
||||||
|
AudioPlayer::playSound(dingSound);
|
||||||
|
if(button->name == "Duplicate")
|
||||||
|
{
|
||||||
|
std::vector<Instance*> newinst;
|
||||||
|
for(size_t i = 0; i < g_selectedInstances.size(); i++)
|
||||||
|
{
|
||||||
|
if(g_selectedInstances.at(i)->canDelete)
|
||||||
|
{
|
||||||
|
Instance* tempinst = g_selectedInstances.at(i);
|
||||||
|
|
||||||
|
Instance* clonedInstance = g_selectedInstances.at(i)->clone();
|
||||||
|
|
||||||
|
newinst.push_back(tempinst);
|
||||||
|
}
|
||||||
|
/*tempinst->setPosition(Vector3(tempPos.x, tempPos.y + tempSize.y, tempPos.z));
|
||||||
|
g_usableApp->cameraController.centerCamera(g_selectedInstances.at(0));*/
|
||||||
|
}
|
||||||
|
g_selectedInstances = newinst;
|
||||||
|
if(g_selectedInstances.size() > 0)
|
||||||
|
g_usableApp->_propWindow->UpdateSelected(newinst.at(0));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,18 +1,24 @@
|
|||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "Application.h"
|
#include "Application.h"
|
||||||
|
|
||||||
|
int const Globals::gen = 0;
|
||||||
|
int const Globals::major = 0;
|
||||||
|
int const Globals::minor = 4;
|
||||||
|
int const Globals::patch = 2;
|
||||||
|
int Globals::surfaceId = 2;
|
||||||
|
bool Globals::showMouse = true;
|
||||||
bool Globals::useMousePoint = false;
|
bool Globals::useMousePoint = false;
|
||||||
std::vector<Instance*> postRenderStack = std::vector<Instance*>();
|
std::vector<Instance*> postRenderStack = std::vector<Instance*>();
|
||||||
|
|
||||||
|
std::vector<Instance*> g_selectedInstances = std::vector<Instance*>();
|
||||||
DataModelInstance* g_dataModel = NULL;
|
DataModelInstance* g_dataModel = NULL;
|
||||||
XplicitNgine* g_xplicitNgine = NULL;
|
|
||||||
|
|
||||||
bool running = false;
|
bool running = false;
|
||||||
|
G3D::TextureRef Globals::surface;
|
||||||
POINT Globals::mousepoint;
|
POINT Globals::mousepoint;
|
||||||
|
|
||||||
GFontRef g_fntdominant = NULL;
|
GFontRef g_fntdominant = NULL;
|
||||||
GFontRef g_fntlighttrek = NULL;
|
GFontRef g_fntlighttrek = NULL;
|
||||||
HWND Globals::mainHwnd = NULL;
|
|
||||||
|
|
||||||
Globals::Globals(void){}
|
Globals::Globals(void){}
|
||||||
|
|
||||||
@@ -22,6 +28,4 @@ std::string cameraSound="";
|
|||||||
std::string clickSound="";
|
std::string clickSound="";
|
||||||
std::string dingSound="";
|
std::string dingSound="";
|
||||||
|
|
||||||
Application *g_usableApp = NULL;
|
Application *g_usableApp = NULL;
|
||||||
|
|
||||||
COLORREF g_acrCustClr[16] = {RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255),RGB(255,255,255)};
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "DataModelV2/DataModelInstance.h"
|
#include "DataModelInstance.h"
|
||||||
#include "XplicitNgine/XplicitNgine.h"
|
#include <G3DAll.h>
|
||||||
|
|
||||||
class Application;
|
class Application;
|
||||||
|
|
||||||
@@ -10,32 +10,28 @@ public:
|
|||||||
Globals(void);
|
Globals(void);
|
||||||
~Globals(void);
|
~Globals(void);
|
||||||
static DataModelInstance* dataModel;
|
static DataModelInstance* dataModel;
|
||||||
//static bool showMouse;
|
static bool showMouse;
|
||||||
static POINT mousepoint;
|
static POINT mousepoint;
|
||||||
static bool useMousePoint;
|
static bool useMousePoint;
|
||||||
static const int gen;
|
static const int gen;
|
||||||
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 const std::string g_appName;
|
static G3D::TextureRef surface;
|
||||||
static COLORREF g_acrCustClr[16]; //Will be dynamic later
|
static int surfaceId;
|
||||||
static HWND mainHwnd;
|
static const std::string g_PlaceholderName;
|
||||||
};
|
};
|
||||||
|
|
||||||
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;
|
||||||
|
|
||||||
extern COLORREF g_acrCustClr[16]; //Will be dynamic later
|
|
||||||
extern std::string cameraSound;
|
extern std::string cameraSound;
|
||||||
extern std::string clickSound;
|
extern std::string clickSound;
|
||||||
extern std::string dingSound;
|
extern std::string dingSound;
|
||||||
extern HWND mainHwnd;
|
const std::string g_PlaceholderName = "HyperCube";
|
||||||
const std::string g_appName = "Blocks3D";
|
|
||||||
30
GroupInstance.cpp
Normal file
30
GroupInstance.cpp
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
#include "GroupInstance.h"
|
||||||
|
|
||||||
|
GroupInstance::GroupInstance(void)
|
||||||
|
{
|
||||||
|
PVInstance::PVInstance();
|
||||||
|
className = "GroupInstance";
|
||||||
|
listicon = 12;
|
||||||
|
}
|
||||||
|
|
||||||
|
GroupInstance::GroupInstance(const GroupInstance &oinst)
|
||||||
|
{
|
||||||
|
PVInstance::PVInstance(oinst);
|
||||||
|
listicon = 12;
|
||||||
|
}
|
||||||
|
|
||||||
|
GroupInstance::~GroupInstance(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
std::vector<PROPGRIDITEM> GroupInstance::getProperties()
|
||||||
|
{
|
||||||
|
std::vector<PROPGRIDITEM> properties = PVInstance::getProperties();
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
void GroupInstance::PropUpdate(LPPROPGRIDITEM &pItem)
|
||||||
|
{
|
||||||
|
PVInstance::PropUpdate(pItem);
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "PartInstance.h"
|
#include "PVInstance.h"
|
||||||
|
|
||||||
class GroupInstance :
|
class GroupInstance :
|
||||||
public PVInstance
|
public PVInstance
|
||||||
@@ -10,7 +10,5 @@ public:
|
|||||||
GroupInstance(const GroupInstance &oinst);
|
GroupInstance(const GroupInstance &oinst);
|
||||||
virtual std::vector<PROPGRIDITEM> getProperties();
|
virtual std::vector<PROPGRIDITEM> getProperties();
|
||||||
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
std::vector<Instance *> unGroup();
|
|
||||||
PartInstance * primaryPart;
|
|
||||||
void render(RenderDevice * r);
|
|
||||||
};
|
};
|
||||||
@@ -1,33 +1,22 @@
|
|||||||
#include <iomanip>
|
#include <iomanip>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include "G3DAll.h"
|
#include "G3DAll.h"
|
||||||
#include "DataModelV2/BaseButtonInstance.h"
|
#include "BaseButtonInstance.h"
|
||||||
#include "DataModelV2/TextButtonInstance.h"
|
#include "TextButtonInstance.h"
|
||||||
#include "DataModelV2/ImageButtonInstance.h"
|
#include "ImageButtonInstance.h"
|
||||||
#include "DataModelV2/ToggleImageButtonInstance.h"
|
#include "GuiRoot.h"
|
||||||
#include "DataModelV2/GuiRootInstance.h"
|
|
||||||
#include "DataModelV2/SelectionService.h"
|
|
||||||
#include "DataModelV2/ImageButtonInstance.h"
|
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "StringFunctions.h"
|
#include "StringFunctions.h"
|
||||||
|
|
||||||
#include "Listener/GUDButtonListener.h"
|
#include "GUDButtonListener.h"
|
||||||
#include "Listener/ModeSelectionListener.h"
|
#include "ModeSelectionListener.h"
|
||||||
#include "Listener/MenuButtonListener.h"
|
#include "RotateButtonListener.h"
|
||||||
#include "Listener/RotateButtonListener.h"
|
#include "CameraButtonListener.h"
|
||||||
#include "Listener/CameraButtonListener.h"
|
#include "DeleteListener.h"
|
||||||
#include "Listener/DeleteListener.h"
|
|
||||||
#include "Listener/ToolbarListener.h"
|
|
||||||
|
|
||||||
MenuButtonListener menuListener = MenuButtonListener();
|
#include "ImageButtonInstance.h"
|
||||||
ToolbarListener toolbar = ToolbarListener();
|
|
||||||
GUDButtonListener gud = GUDButtonListener();
|
|
||||||
ModeSelectionListener msl = ModeSelectionListener();
|
|
||||||
RotateButtonListener rbl = RotateButtonListener();
|
|
||||||
DeleteListener delet = DeleteListener();
|
|
||||||
CameraButtonListener cam = CameraButtonListener();
|
|
||||||
|
|
||||||
ImageButtonInstance* GuiRootInstance::makeImageButton(G3D::TextureRef newImage = NULL, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL)
|
ImageButtonInstance* GuiRoot::makeImageButton(G3D::TextureRef newImage = NULL, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL)
|
||||||
{
|
{
|
||||||
ImageButtonInstance* part = new ImageButtonInstance(newImage,overImage, downImage, disableImage);
|
ImageButtonInstance* part = new ImageButtonInstance(newImage,overImage, downImage, disableImage);
|
||||||
// instances.push_back(part);
|
// instances.push_back(part);
|
||||||
@@ -35,18 +24,17 @@ ImageButtonInstance* GuiRootInstance::makeImageButton(G3D::TextureRef newImage =
|
|||||||
return part;
|
return part;
|
||||||
}
|
}
|
||||||
|
|
||||||
TextButtonInstance* GuiRootInstance::makeTextButton()
|
TextButtonInstance* GuiRoot::makeTextButton()
|
||||||
{
|
{
|
||||||
TextButtonInstance* part = new TextButtonInstance();
|
TextButtonInstance* part = new TextButtonInstance();
|
||||||
return part;
|
return part;
|
||||||
}
|
}
|
||||||
GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|
||||||
|
GuiRoot::GuiRoot() : _message(""), _messageTime(0)
|
||||||
{
|
{
|
||||||
g_fntdominant = GFont::fromFile(GetFileInPath("/content/font/dominant.fnt"));
|
g_fntdominant = GFont::fromFile(GetFileInPath("/content/font/dominant.fnt"));
|
||||||
g_fntlighttrek = GFont::fromFile(GetFileInPath("/content/font/lighttrek.fnt"));
|
g_fntlighttrek = GFont::fromFile(GetFileInPath("/content/font/lighttrek.fnt"));
|
||||||
_hideGui = false;
|
|
||||||
|
|
||||||
//Bottom Left
|
|
||||||
TextButtonInstance* button = makeTextButton();
|
TextButtonInstance* button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0, -24);
|
button->boxBegin = Vector2(0, -24);
|
||||||
button->boxEnd = Vector2(80, 0);
|
button->boxEnd = Vector2(80, 0);
|
||||||
@@ -58,11 +46,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->title = "Hopper";
|
button->title = "Hopper";
|
||||||
button->fontLocationRelativeTo = Vector2(10, 3);
|
button->fontLocationRelativeTo = Vector2(10, 3);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxOutlineColorOvr = Color3(0,255,255);
|
|
||||||
button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F);
|
|
||||||
button->setButtonListener(toolbar);
|
|
||||||
toolbar.addButtonRef(button);
|
|
||||||
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0, -48);
|
button->boxBegin = Vector2(0, -48);
|
||||||
@@ -75,10 +58,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->title = "Controller";
|
button->title = "Controller";
|
||||||
button->fontLocationRelativeTo = Vector2(10, 3);
|
button->fontLocationRelativeTo = Vector2(10, 3);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxOutlineColorOvr = Color3(0,255,255);
|
|
||||||
button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F);
|
|
||||||
button->setButtonListener(toolbar);
|
|
||||||
toolbar.addButtonRef(button);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0, -72);
|
button->boxBegin = Vector2(0, -72);
|
||||||
@@ -91,10 +70,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->title = "Color";
|
button->title = "Color";
|
||||||
button->fontLocationRelativeTo = Vector2(10, 3);
|
button->fontLocationRelativeTo = Vector2(10, 3);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxOutlineColorOvr = Color3(0,255,255);
|
|
||||||
button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F);
|
|
||||||
button->setButtonListener(toolbar);
|
|
||||||
toolbar.addButtonRef(button);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0, -96);
|
button->boxBegin = Vector2(0, -96);
|
||||||
@@ -107,10 +82,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->title = "Surface";
|
button->title = "Surface";
|
||||||
button->fontLocationRelativeTo = Vector2(10, 3);
|
button->fontLocationRelativeTo = Vector2(10, 3);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxOutlineColorOvr = Color3(0,255,255);
|
|
||||||
button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F);
|
|
||||||
button->setButtonListener(toolbar);
|
|
||||||
toolbar.addButtonRef(button);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0, -120);
|
button->boxBegin = Vector2(0, -120);
|
||||||
@@ -119,16 +90,11 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->setParent(this);
|
button->setParent(this);
|
||||||
button->font = g_fntlighttrek;
|
button->font = g_fntlighttrek;
|
||||||
button->textColor = Color3(0,255,255);
|
button->textColor = Color3(0,255,255);
|
||||||
|
button->boxOutlineColor = Color3(0,255,255);
|
||||||
button->title = "Model";
|
button->title = "Model";
|
||||||
button->selected = true;
|
|
||||||
button->fontLocationRelativeTo = Vector2(10, 3);
|
button->fontLocationRelativeTo = Vector2(10, 3);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxOutlineColorOvr = Color3(0,255,255);
|
|
||||||
button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F);
|
|
||||||
button->setButtonListener(toolbar);
|
|
||||||
toolbar.addButtonRef(button);
|
|
||||||
|
|
||||||
//Top bar
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0, 0);
|
button->boxBegin = Vector2(0, 0);
|
||||||
button->boxEnd = Vector2(125, 25);
|
button->boxEnd = Vector2(125, 25);
|
||||||
@@ -141,9 +107,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->textSize = 16;
|
button->textSize = 16;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->name = "file";
|
|
||||||
button->setButtonListener(menuListener);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(125, 0);
|
button->boxBegin = Vector2(125, 0);
|
||||||
@@ -157,9 +120,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->textSize = 16;
|
button->textSize = 16;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->name = "edit";
|
|
||||||
button->setButtonListener(menuListener);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(250, 0);
|
button->boxBegin = Vector2(250, 0);
|
||||||
@@ -173,9 +133,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->textSize = 16;
|
button->textSize = 16;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->name = "view";
|
|
||||||
button->setButtonListener(menuListener);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(375, 0);
|
button->boxBegin = Vector2(375, 0);
|
||||||
@@ -189,9 +146,6 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->textSize = 16;
|
button->textSize = 16;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->name = "insert";
|
|
||||||
button->setButtonListener(menuListener);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(500, 0);
|
button->boxBegin = Vector2(500, 0);
|
||||||
@@ -205,90 +159,60 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
button->textSize = 16;
|
button->textSize = 16;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->name = "format";
|
|
||||||
button->setButtonListener(menuListener);
|
|
||||||
|
|
||||||
//Menu
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0,215);
|
button->boxBegin = Vector2(0,215);
|
||||||
button->boxEnd = Vector2(80,235);
|
button->boxEnd = Vector2(80,235);
|
||||||
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
||||||
button->textColor = Color3(0,1,1);
|
button->textColor = Color3::white();
|
||||||
button->boxColor = Color4::clear();
|
button->boxColor = Color4::clear();
|
||||||
button->textSize = 12;
|
button->textSize = 12;
|
||||||
button->title = "Group";
|
button->title = "Group";
|
||||||
button->name = "Group";
|
button->name = "Group";
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->textColorDis = Color3(0.8F,0.8F,0.8F);
|
button->textColorDis = Color3(0.8F,0.8F,0.8F);
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->font = g_fntlighttrek;
|
button->font = g_fntlighttrek;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setParent(this);
|
button->setParent(this);
|
||||||
button->setButtonListener(gud);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0,240);
|
button->boxBegin = Vector2(0,240);
|
||||||
button->boxEnd = Vector2(80,260);
|
button->boxEnd = Vector2(80,260);
|
||||||
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
||||||
button->textColor = Color3(0,1,1);
|
button->textColor = Color3::white();
|
||||||
button->boxColor = Color4::clear();
|
button->boxColor = Color4::clear();
|
||||||
button->textSize = 12;
|
button->textSize = 12;
|
||||||
button->title = "UnGroup";
|
button->title = "UnGroup";
|
||||||
button->name = "UnGroup";
|
button->name = "UnGroup";
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->textColorDis = Color3(0.8F,0.8F,0.8F);
|
button->textColorDis = Color3(0.8F,0.8F,0.8F);
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->font = g_fntlighttrek;
|
button->font = g_fntlighttrek;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setParent(this);
|
button->setParent(this);
|
||||||
button->setButtonListener(gud);
|
|
||||||
|
|
||||||
button = makeTextButton();
|
button = makeTextButton();
|
||||||
button->boxBegin = Vector2(0,265);
|
button->boxBegin = Vector2(0,265);
|
||||||
button->boxEnd = Vector2(80,285);
|
button->boxEnd = Vector2(80,285);
|
||||||
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
||||||
button->textColor = Color3(0,1,1);
|
button->textColor = Color3::white();
|
||||||
button->boxColor = Color4::clear();
|
button->boxColor = Color4::clear();
|
||||||
button->textSize = 12;
|
button->textSize = 12;
|
||||||
button->title = "Duplicate";
|
button->title = "Duplicate";
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
button->textColorDis = Color3(0.8F,0.8F,0.8F);
|
button->textColorDis = Color3(0.8F,0.8F,0.8F);
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->font = g_fntlighttrek;
|
button->font = g_fntlighttrek;
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->setParent(this);
|
button->setParent(this);
|
||||||
button->name = "Duplicate";
|
button->name = "Duplicate";
|
||||||
button->setButtonListener(gud);
|
button->setButtonListener(new GUDButtonListener());
|
||||||
|
|
||||||
//g_fntlighttrek->draw2D(rd,"MENU", Vector2(10,332), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F));
|
ImageButtonInstance* instance = makeImageButton(
|
||||||
|
Texture::fromFile(GetFileInPath("/content/images/Run.png")),
|
||||||
button = makeTextButton();
|
Texture::fromFile(GetFileInPath("/content/images/Run_ovr.png")),
|
||||||
button->boxBegin = Vector2(0,332);
|
Texture::fromFile(GetFileInPath("/content/images/Run_dn.png")));
|
||||||
button->boxEnd = Vector2(80,352);
|
|
||||||
button->textOutlineColor = Color4(0.5F,0.5F,0.5F,0.5F);
|
|
||||||
button->textColor = Color3::white();
|
|
||||||
button->boxColor = Color4::clear();
|
|
||||||
button->textSize = 14;
|
|
||||||
button->title = "MENU";
|
|
||||||
button->setAllColorsSame();
|
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
|
||||||
button->font = g_fntlighttrek;
|
|
||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
|
||||||
button->setParent(this);
|
|
||||||
button->name = "MENU";
|
|
||||||
button->setButtonListener(menuListener);
|
|
||||||
|
|
||||||
ImageButtonInstance* instance = new ToggleImageButtonInstance(
|
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Run.png")),
|
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Run_ovr.png")),
|
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Run_dn.png")),
|
|
||||||
NULL,
|
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Stop.png")),
|
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Stop_ovr.png")),
|
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Stop_dn.png"))
|
|
||||||
);
|
|
||||||
instance->setButtonListener(menuListener);
|
|
||||||
instance->name = "go";
|
instance->name = "go";
|
||||||
instance->size = Vector2(65,65);
|
instance->size = Vector2(65,65);
|
||||||
instance->position = Vector2(6.5, 25);
|
instance->position = Vector2(6.5, 25);
|
||||||
@@ -296,175 +220,174 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
|
|||||||
|
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/ArrowTool.png")),
|
Texture::fromFile(GetFileInPath("/content/images/ArrowTool.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/ArrowTool_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/ArrowTool_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/ArrowTool_dn.png")),
|
Texture::fromFile(GetFileInPath("/content/images/ArrowTool_dn.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/ArrowTool_ds.png")));
|
Texture::fromFile(GetFileInPath("/content/images/ArrowTool_ds.png")));
|
||||||
instance->size = Vector2(50,50);
|
instance->size = Vector2(50,50);
|
||||||
instance->position = Vector2(15, 90);
|
instance->position = Vector2(15, 90);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "Cursor";
|
instance->name = "Cursor";
|
||||||
instance->setButtonListener(msl);
|
instance->setButtonListener(new ModeSelectionListener());
|
||||||
|
|
||||||
instance = makeImageButton(Texture::fromFile(&GetFileInPath("/content/images/ScaleTool.png")),Texture::fromFile(&GetFileInPath("/content/images/ScaleTool_ovr.png")),Texture::fromFile(&GetFileInPath("/content/images/ScaleTool_dn.png")),Texture::fromFile(&GetFileInPath("/content/images/ScaleTool_ds.png")));
|
instance = makeImageButton(Texture::fromFile(GetFileInPath("/content/images/ScaleTool.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_ovr.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_dn.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_ds.png")));
|
||||||
instance->size = Vector2(40,40);
|
instance->size = Vector2(40,40);
|
||||||
instance->position = Vector2(0, 140);
|
instance->position = Vector2(0, 140);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "Resize";
|
instance->name = "Resize";
|
||||||
instance->setButtonListener(msl);
|
instance->setButtonListener(new ModeSelectionListener());
|
||||||
|
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/MoveTool.png")),
|
Texture::fromFile(GetFileInPath("/content/images/MoveTool.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/MoveTool_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/MoveTool_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/MoveTool_dn.png")),
|
Texture::fromFile(GetFileInPath("/content/images/MoveTool_dn.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/MoveTool_ds.png")));
|
Texture::fromFile(GetFileInPath("/content/images/MoveTool_ds.png")));
|
||||||
instance->size = Vector2(40,40);
|
instance->size = Vector2(40,40);
|
||||||
instance->position = Vector2(40, 140);
|
instance->position = Vector2(40, 140);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "Arrows";
|
instance->name = "Arrows";
|
||||||
instance->setButtonListener(msl);
|
instance->setButtonListener(new ModeSelectionListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/SelectionRotate.png")),
|
Texture::fromFile(GetFileInPath("/content/images/SelectionRotate.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/SelectionRotate_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/SelectionRotate_ovr.png")),
|
||||||
NULL,
|
NULL,
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/SelectionRotate_ds.png")));
|
Texture::fromFile(GetFileInPath("/content/images/SelectionRotate_ds.png")));
|
||||||
instance->size = Vector2(30,30);
|
instance->size = Vector2(30,30);
|
||||||
instance->position = Vector2(10, 175);
|
instance->position = Vector2(10, 175);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "Rotate";
|
instance->name = "Rotate";
|
||||||
instance->setButtonListener(rbl);
|
instance->setButtonListener(new RotateButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/SelectionTilt.png")),
|
Texture::fromFile(GetFileInPath("/content/images/SelectionTilt.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/SelectionTilt_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/SelectionTilt_ovr.png")),
|
||||||
NULL,
|
NULL,
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/SelectionTilt_ds.png")));
|
Texture::fromFile(GetFileInPath("/content/images/SelectionTilt_ds.png")));
|
||||||
instance->size = Vector2(30,30);
|
instance->size = Vector2(30,30);
|
||||||
instance->position = Vector2(40, 175);
|
instance->position = Vector2(40, 175);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "Tilt";
|
instance->name = "Tilt";
|
||||||
instance->setButtonListener(rbl);
|
instance->setButtonListener(new RotateButtonListener());
|
||||||
|
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Delete.png")),
|
Texture::fromFile(GetFileInPath("/content/images/Delete.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Delete_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/Delete_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Delete_dn.png")),
|
Texture::fromFile(GetFileInPath("/content/images/Delete_dn.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/Delete_ds.png")));
|
Texture::fromFile(GetFileInPath("/content/images/Delete_ds.png")));
|
||||||
instance->size = Vector2(40,46);
|
instance->size = Vector2(40,46);
|
||||||
instance->position = Vector2(20, 284);
|
instance->position = Vector2(20, 284);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "Delete";
|
instance->name = "Delete";
|
||||||
instance->setButtonListener(delet);
|
instance->setButtonListener(new DeleteListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraZoomIn.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraZoomIn.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraZoomIn_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraZoomIn_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraZoomIn_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraZoomIn_dn.png")));
|
||||||
instance->size = Vector2(34,25);
|
instance->size = Vector2(34,25);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-77, -90);
|
instance->position = Vector2(-77, -90);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "ZoomIn";
|
instance->name = "ZoomIn";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraZoomOut.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraZoomOut.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraZoomOut_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraZoomOut_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraZoomOut_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraZoomOut_dn.png")));
|
||||||
instance->size = Vector2(34,26);
|
instance->size = Vector2(34,26);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-77, -31);
|
instance->position = Vector2(-77, -31);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "ZoomOut";
|
instance->name = "ZoomOut";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraPanLeft.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraPanLeft.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraPanLeft_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraPanLeft_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraPanLeft_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraPanLeft_dn.png")));
|
||||||
instance->size = Vector2(34,34);
|
instance->size = Vector2(34,34);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-110, -50);
|
instance->position = Vector2(-110, -50);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "PanLeft";
|
instance->name = "PanLeft";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraPanRight.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraPanRight.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraPanRight_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraPanRight_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraPanRight_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraPanRight_dn.png")));
|
||||||
instance->size = Vector2(34,34);
|
instance->size = Vector2(34,34);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-45, -50);
|
instance->position = Vector2(-45, -50);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "PanRight";
|
instance->name = "PanRight";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraCenter.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraCenter.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraCenter_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraCenter_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraCenter_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraCenter_dn.png")));
|
||||||
instance->size = Vector2(34,20);
|
instance->size = Vector2(34,20);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-77, -60);
|
instance->position = Vector2(-77, -60);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "CenterCam";
|
instance->name = "CenterCam";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraTiltUp.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraTiltUp.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraTiltUp_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraTiltUp_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraTiltUp_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraTiltUp_dn.png")));
|
||||||
instance->size = Vector2(24,24);
|
instance->size = Vector2(24,24);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-105, -75);
|
instance->position = Vector2(-105, -75);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "TiltUp";
|
instance->name = "TiltUp";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
|
|
||||||
instance = makeImageButton(
|
instance = makeImageButton(
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraTiltDown.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraTiltDown.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraTiltDown_ovr.png")),
|
Texture::fromFile(GetFileInPath("/content/images/CameraTiltDown_ovr.png")),
|
||||||
Texture::fromFile(&GetFileInPath("/content/images/CameraTiltDown_dn.png")));
|
Texture::fromFile(GetFileInPath("/content/images/CameraTiltDown_dn.png")));
|
||||||
instance->size = Vector2(24,24);
|
instance->size = Vector2(24,24);
|
||||||
instance->floatBottom = true;
|
instance->floatBottom = true;
|
||||||
instance->floatRight = true;
|
instance->floatRight = true;
|
||||||
instance->position = Vector2(-40, -75);
|
instance->position = Vector2(-40, -75);
|
||||||
instance->setParent(this);
|
instance->setParent(this);
|
||||||
instance->name = "TiltDown";
|
instance->name = "TiltDown";
|
||||||
instance->setButtonListener(cam);
|
instance->setButtonListener(new CameraButtonListener());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void GuiRootInstance::drawButtons(RenderDevice* rd)
|
void GuiRoot::drawButtons(RenderDevice* rd)
|
||||||
{
|
{
|
||||||
rd->pushState();
|
rd->pushState();
|
||||||
rd->beforePrimitive();
|
rd->beforePrimitive();
|
||||||
//this->render(rd);
|
this->render(rd);
|
||||||
rd->afterPrimitive();
|
rd->afterPrimitive();
|
||||||
rd->popState();
|
rd->popState();
|
||||||
}
|
}
|
||||||
|
|
||||||
void GuiRootInstance::setDebugMessage(std::string msg, G3D::RealTime msgTime)
|
void GuiRoot::setDebugMessage(std::string msg, G3D::RealTime msgTime)
|
||||||
{
|
{
|
||||||
_messageTime = msgTime;
|
_messageTime = msgTime;
|
||||||
_message = msg;
|
_message = msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
//void GuiRootInstance::render(G3D::RenderDevice* renderDevice) {}
|
//void GuiRoot::render(G3D::RenderDevice* renderDevice) {}
|
||||||
|
|
||||||
void GuiRootInstance::renderGUI(G3D::RenderDevice* rd, double fps)
|
void GuiRoot::renderGUI(G3D::RenderDevice* rd, double fps)
|
||||||
{
|
{
|
||||||
if(_hideGui) return;
|
|
||||||
//TODO--Move these to their own instance
|
//TODO--Move these to their own instance
|
||||||
|
|
||||||
std::stringstream stream;
|
std::stringstream stream;
|
||||||
@@ -480,17 +403,17 @@ void GuiRootInstance::renderGUI(G3D::RenderDevice* rd, double fps)
|
|||||||
#endif
|
#endif
|
||||||
//GUI Boxes
|
//GUI Boxes
|
||||||
Draw::box(G3D::Box(Vector3(0,25,0),Vector3(80,355,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0));
|
Draw::box(G3D::Box(Vector3(0,25,0),Vector3(80,355,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0));
|
||||||
Draw::box(G3D::Box(Vector3(rd->getWidth() - 120,rd->getHeight() - 117,0),Vector3(rd->getWidth(),rd->getHeight(),0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0));
|
Draw::box(G3D::Box(Vector3(rd->getWidth() - 120,rd->getHeight() - 120,0),Vector3(rd->getWidth(),rd->getHeight(),0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0));
|
||||||
|
|
||||||
//Camera menu title
|
//Camera menu title
|
||||||
g_fntlighttrek->draw2D(rd, "CameraMenu", Vector2(rd->getWidth()-(g_fntlighttrek->get2DStringBounds("CameraMenu", 14).x+1),rd->getHeight() - 120), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F));
|
g_fntlighttrek->draw2D(rd, "CameraMenu", Vector2(rd->getWidth()-(g_fntlighttrek->get2DStringBounds("CameraMenu", 14).x+1),rd->getHeight() - 120), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F));
|
||||||
|
|
||||||
//Tools menu
|
//Tools menu
|
||||||
Draw::box(G3D::Box(Vector3(5, 210,0),Vector3(75, 210,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0.6F,0.6F,0.6F,0.4F));
|
Draw::box(G3D::Box(Vector3(5, 210,0),Vector3(75, 210,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0.6F,0.6F,0.6F,0.4F));
|
||||||
|
g_fntlighttrek->draw2D(rd,"MENU", Vector2(10,332), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F));
|
||||||
|
|
||||||
|
|
||||||
//drawButtons(rd);
|
drawButtons(rd);
|
||||||
if(System::time() - 3 < _messageTime)
|
if(System::time() - 3 < _messageTime)
|
||||||
{
|
{
|
||||||
g_fntdominant->draw2D(rd, _message, Vector2((rd->getWidth()/2)-(g_fntdominant->get2DStringBounds(_message, 20).x/2),(rd->getHeight()/2)-(g_fntdominant->get2DStringBounds(_message, 20).y/2)), 20, Color3::yellow(), Color3::black());
|
g_fntdominant->draw2D(rd, _message, Vector2((rd->getWidth()/2)-(g_fntdominant->get2DStringBounds(_message, 20).x/2),(rd->getHeight()/2)-(g_fntdominant->get2DStringBounds(_message, 20).y/2)), 20, Color3::yellow(), Color3::black());
|
||||||
@@ -500,7 +423,7 @@ void GuiRootInstance::renderGUI(G3D::RenderDevice* rd, double fps)
|
|||||||
render(rd);
|
render(rd);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GuiRootInstance::mouseInGUI(G3D::RenderDevice* renderDevice,int x,int y)
|
bool GuiRoot::mouseInGUI(G3D::RenderDevice* renderDevice,int x,int y)
|
||||||
{
|
{
|
||||||
std::vector<Instance*> instances_2D = g_dataModel->getGuiRoot()->getAllChildren();
|
std::vector<Instance*> instances_2D = g_dataModel->getGuiRoot()->getAllChildren();
|
||||||
for(size_t i = 0; i < instances_2D.size(); i++)
|
for(size_t i = 0; i < instances_2D.size(); i++)
|
||||||
@@ -515,8 +438,8 @@ bool GuiRootInstance::mouseInGUI(G3D::RenderDevice* renderDevice,int x,int y)
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
//Oh eww...
|
|
||||||
void GuiRootInstance::update()
|
void GuiRoot::update()
|
||||||
{
|
{
|
||||||
Instance * obj6 = this->findFirstChild("Delete");
|
Instance * obj6 = this->findFirstChild("Delete");
|
||||||
Instance * obj = this->findFirstChild("Duplicate");
|
Instance * obj = this->findFirstChild("Duplicate");
|
||||||
@@ -524,9 +447,6 @@ void GuiRootInstance::update()
|
|||||||
Instance * obj3 = this->findFirstChild("UnGroup");
|
Instance * obj3 = this->findFirstChild("UnGroup");
|
||||||
Instance * obj4 = this->findFirstChild("Rotate");
|
Instance * obj4 = this->findFirstChild("Rotate");
|
||||||
Instance * obj5 = this->findFirstChild("Tilt");
|
Instance * obj5 = this->findFirstChild("Tilt");
|
||||||
|
|
||||||
SelectionService* getSelectionService = g_dataModel->getSelectionService();
|
|
||||||
|
|
||||||
if(obj != NULL && obj2 != NULL && obj3 != NULL && obj4 !=NULL && obj5 != NULL && obj6 != NULL)
|
if(obj != NULL && obj2 != NULL && obj3 != NULL && obj4 !=NULL && obj5 != NULL && obj6 != NULL)
|
||||||
{
|
{
|
||||||
BaseButtonInstance* button = (BaseButtonInstance*)obj;
|
BaseButtonInstance* button = (BaseButtonInstance*)obj;
|
||||||
@@ -541,33 +461,21 @@ void GuiRootInstance::update()
|
|||||||
button4->disabled = true;
|
button4->disabled = true;
|
||||||
button5->disabled = true;
|
button5->disabled = true;
|
||||||
button6->disabled = true;
|
button6->disabled = true;
|
||||||
for(size_t i = 0; i < getSelectionService->getSelection().size(); i++)
|
for(size_t i = 0; i < g_selectedInstances.size(); i++)
|
||||||
if(getSelectionService->getSelection()[i]->canDelete)
|
if(g_selectedInstances.at(i)->canDelete)
|
||||||
{
|
{
|
||||||
button->disabled = false;
|
button->disabled = false;
|
||||||
|
button2->disabled = false;
|
||||||
|
button3->disabled = false;
|
||||||
button4->disabled = false;
|
button4->disabled = false;
|
||||||
button5->disabled = false;
|
button5->disabled = false;
|
||||||
button6->disabled = false;
|
button6->disabled = false;
|
||||||
|
|
||||||
|
|
||||||
if (getSelectionService->getSelection().size() > 1){
|
|
||||||
button2->disabled = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dynamic_cast<GroupInstance*>(getSelectionService->getSelection()[i])){
|
|
||||||
button3->disabled = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiRootInstance::~GuiRootInstance()
|
void GuiRoot::onMouseLeftUp(G3D::RenderDevice* renderDevice, int x,int y)
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void GuiRootInstance::onMouseLeftUp(G3D::RenderDevice* renderDevice, int x,int y)
|
|
||||||
{
|
{
|
||||||
std::vector<Instance*> instances_2D = this->getAllChildren();
|
std::vector<Instance*> instances_2D = this->getAllChildren();
|
||||||
for(size_t i = 0; i < instances_2D.size(); i++)
|
for(size_t i = 0; i < instances_2D.size(); i++)
|
||||||
@@ -581,7 +489,3 @@ void GuiRootInstance::onMouseLeftUp(G3D::RenderDevice* renderDevice, int x,int y
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void GuiRootInstance::hideGui(bool doHide) {
|
|
||||||
_hideGui = doHide;
|
|
||||||
}
|
|
||||||
@@ -5,11 +5,10 @@ class ImageButtonInstance;
|
|||||||
|
|
||||||
class TextButtonInstance;
|
class TextButtonInstance;
|
||||||
|
|
||||||
class GuiRootInstance : public Instance
|
class GuiRoot : public Instance
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
GuiRootInstance();
|
GuiRoot();
|
||||||
GuiRootInstance::~GuiRootInstance();
|
|
||||||
TextButtonInstance* makeTextButton();
|
TextButtonInstance* makeTextButton();
|
||||||
void drawButtons(RenderDevice* rd);
|
void drawButtons(RenderDevice* rd);
|
||||||
ImageButtonInstance* makeImageButton(G3D::TextureRef newImage, G3D::TextureRef overImage, G3D::TextureRef downImage, G3D::TextureRef disableImage);
|
ImageButtonInstance* makeImageButton(G3D::TextureRef newImage, G3D::TextureRef overImage, G3D::TextureRef downImage, G3D::TextureRef disableImage);
|
||||||
@@ -18,9 +17,7 @@ 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;
|
|
||||||
};
|
};
|
||||||
105
IEBrowser.cpp
Normal file
105
IEBrowser.cpp
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
#ifndef WIN32_LEAN_AND_MEAN
|
||||||
|
#define WIN32_LEAN_AND_MEAN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
#include "IEBrowser.h"
|
||||||
|
#include "Globals.h"
|
||||||
|
#include "ax.h"
|
||||||
|
//#include "IEDispatcher.h"
|
||||||
|
|
||||||
|
void IEBrowser::Boop(char* test)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
IEBrowser::IEBrowser(HWND attachHWnd) {
|
||||||
|
MSG messages;
|
||||||
|
while (PeekMessage (&messages, NULL, 0, 0,PM_REMOVE))
|
||||||
|
{
|
||||||
|
if (IsDialogMessage(hwnd, &messages) == 0)
|
||||||
|
{
|
||||||
|
TranslateMessage(&messages);
|
||||||
|
DispatchMessage(&messages);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
hwnd = attachHWnd;
|
||||||
|
spDocument = 0;
|
||||||
|
webBrowser = 0;
|
||||||
|
SendMessage(hwnd,AX_INPLACE,1,0);
|
||||||
|
SendMessage(hwnd,AX_QUERYINTERFACE,(WPARAM)&IID_IWebBrowser2,(LPARAM)&webBrowser);
|
||||||
|
}
|
||||||
|
|
||||||
|
IEBrowser::~IEBrowser(void) {
|
||||||
|
if (webBrowser)
|
||||||
|
{
|
||||||
|
webBrowser->Release();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Something goes here
|
||||||
|
int IEBrowser::setExternal(IDispatch** ext)
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool IEBrowser::navigateSyncURL(wchar_t* url)
|
||||||
|
{
|
||||||
|
MSG messages;
|
||||||
|
if (webBrowser)
|
||||||
|
{
|
||||||
|
webBrowser->Navigate(url,0,0,0,0);
|
||||||
|
for (int i=1;i<1000;i++)
|
||||||
|
{
|
||||||
|
while (PeekMessage (&messages, NULL, 0, 0,PM_REMOVE))
|
||||||
|
{
|
||||||
|
if (IsDialogMessage(hwnd, &messages) == 0)
|
||||||
|
{
|
||||||
|
TranslateMessage(&messages);
|
||||||
|
DispatchMessage(&messages);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Sleep(30);
|
||||||
|
|
||||||
|
HRESULT hresult = webBrowser->get_Document(&spDocument);
|
||||||
|
if (SUCCEEDED(hresult) && (spDocument != 0))
|
||||||
|
{
|
||||||
|
|
||||||
|
IOleObject* spOleObject;
|
||||||
|
if (SUCCEEDED(spDocument->QueryInterface(IID_IOleObject,(void**)&spOleObject)))
|
||||||
|
{
|
||||||
|
IOleClientSite* spClientSite;
|
||||||
|
hresult = spOleObject->GetClientSite(&spClientSite);
|
||||||
|
if (SUCCEEDED(hresult) && spClientSite)
|
||||||
|
{
|
||||||
|
m_spDefaultDocHostUIHandler = spClientSite;
|
||||||
|
ICustomDoc* spCustomDoc;
|
||||||
|
|
||||||
|
//IEDispatcher* spIEDispatcher;
|
||||||
|
if (SUCCEEDED(m_spDefaultDocHostUIHandler->QueryInterface(IID_IDocHostUIHandler,(void**)&m_spHandler)))
|
||||||
|
{
|
||||||
|
if (SUCCEEDED(spDocument->QueryInterface(IID_ICustomDoc,(void**)&spCustomDoc)))
|
||||||
|
{
|
||||||
|
spCustomDoc->SetUIHandler(m_spHandler);
|
||||||
|
|
||||||
|
m_spHandler->GetExternal(&m_spExternal);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
MessageBox(NULL,"Cannot read IWebBrowser2...",(g_PlaceholderName+" Crash").c_str(),MB_OK);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
23
IEBrowser.h
Normal file
23
IEBrowser.h
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
//#include "WindowFunctions.h"
|
||||||
|
#pragma once
|
||||||
|
#include <mshtml.h>
|
||||||
|
#include <exdisp.h>
|
||||||
|
#include <Mshtmhst.h>
|
||||||
|
|
||||||
|
class IEBrowser {
|
||||||
|
public:
|
||||||
|
IEBrowser(HWND attachHWnd);
|
||||||
|
~IEBrowser(void);
|
||||||
|
bool navigateSyncURL(wchar_t* url);
|
||||||
|
void Boop(char* test);
|
||||||
|
private:
|
||||||
|
IWebBrowser2* webBrowser;
|
||||||
|
HWND hwnd;
|
||||||
|
IDispatch* spDocument;
|
||||||
|
IHTMLDocument* spDocument2;
|
||||||
|
IDocHostUIHandler* m_spHandler;
|
||||||
|
IDispatch* m_spExternal;
|
||||||
|
IDispatch* m_newExternal;
|
||||||
|
IOleClientSite* m_spDefaultDocHostUIHandler;
|
||||||
|
int setExternal(IDispatch** ext);
|
||||||
|
};
|
||||||
@@ -2,9 +2,11 @@
|
|||||||
#include "oaidl.h"
|
#include "oaidl.h"
|
||||||
//DEFINE_GUID(CLSID_G3d, 0xB323F8E0L, 0x2E68, 0x11D0, 0x90, 0xEA, 0x00, 0xAA, 0x00, 0x60, 0xF8, 0x6F);
|
//DEFINE_GUID(CLSID_G3d, 0xB323F8E0L, 0x2E68, 0x11D0, 0x90, 0xEA, 0x00, 0xAA, 0x00, 0x60, 0xF8, 0x6F);
|
||||||
|
|
||||||
|
/*
|
||||||
class IEDispatcher : public IDispatch
|
class IEDispatcher : public IDispatch
|
||||||
{
|
{
|
||||||
/*
|
*/
|
||||||
|
|
||||||
EXTERN_C const IID IID_IDispatch;
|
EXTERN_C const IID IID_IDispatch;
|
||||||
|
|
||||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||||
@@ -12,7 +14,6 @@ EXTERN_C const IID IID_IDispatch;
|
|||||||
MIDL_INTERFACE("B323F8E0-2E68-11D0-90EA-00AA0060F86F")
|
MIDL_INTERFACE("B323F8E0-2E68-11D0-90EA-00AA0060F86F")
|
||||||
IEDispatcher : public IDispatch
|
IEDispatcher : public IDispatch
|
||||||
{
|
{
|
||||||
*/
|
|
||||||
public:
|
public:
|
||||||
IEDispatcher(void);
|
IEDispatcher(void);
|
||||||
~IEDispatcher(void);
|
~IEDispatcher(void);
|
||||||
@@ -26,4 +27,4 @@ public:
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//#endif
|
#endif
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "DataModelV2/ImageButtonInstance.h"
|
#include "ImageButtonInstance.h"
|
||||||
|
|
||||||
ImageButtonInstance::ImageButtonInstance(G3D::TextureRef newImage, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL)
|
ImageButtonInstance::ImageButtonInstance(G3D::TextureRef newImage, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL)
|
||||||
{
|
{
|
||||||
@@ -38,6 +38,7 @@ ImageButtonInstance::~ImageButtonInstance(void)
|
|||||||
image_ovr = NULL;
|
image_ovr = NULL;
|
||||||
image_ds = NULL;
|
image_ds = NULL;
|
||||||
image_dn = NULL;
|
image_dn = NULL;
|
||||||
|
delete listener;
|
||||||
listener = NULL;
|
listener = NULL;
|
||||||
selected = false;
|
selected = false;
|
||||||
}
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,49 +0,0 @@
|
|||||||
;InnoSetupVersion=5.4.3
|
|
||||||
;ONLY USE THIS IF YOU COMPILED WITH VISUAL STUDIO 2005!!!
|
|
||||||
#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=Blocks3D_Setup_v{#AppVer}
|
|
||||||
Compression=lzma2
|
|
||||||
PrivilegesRequired=lowest
|
|
||||||
WizardImageFile=setup.bmp
|
|
||||||
DefaultGroupName=Blocks3D
|
|
||||||
|
|
||||||
|
|
||||||
[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";
|
|
||||||
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
;InnoSetupVersion=5.4.3
|
|
||||||
;ONLY USE THIS IF YOU COMPILED WITH VISUAL STUDIO 2005!!!
|
|
||||||
#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";
|
|
||||||
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
;InnoSetupVersion=5.4.3
|
|
||||||
;ONLY USE THIS IF YOU COMPILED WITH VISUAL STUDIO 2003!!!
|
|
||||||
#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\msvcr71.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
||||||
Source: "Redist\msvcp71.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
||||||
Source: "..\content\*"; DestDir: "{app}\content"; Flags: ignoreversion recursesubdirs
|
|
||||||
Source: "..\Blocks3D.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
|
||||||
|
|
||||||
[Registry]
|
|
||||||
|
|
||||||
|
|
||||||
[Run]
|
|
||||||
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: "desktopicon"; Description: "Create Desktop Icons";
|
|
||||||
Name: "startscut"; Description: "Create Start Menu Icons";
|
|
||||||
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
;InnoSetupVersion=5.4.3
|
|
||||||
;ONLY USE THIS IF YOU COMPILED WITH VISUAL STUDIO 2003!!!
|
|
||||||
#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=Blocks3D_Setup_v{#AppVer}
|
|
||||||
Compression=lzma2
|
|
||||||
PrivilegesRequired=lowest
|
|
||||||
WizardImageFile=setup.bmp
|
|
||||||
DefaultGroupName=Blocks3D
|
|
||||||
|
|
||||||
|
|
||||||
[UninstallDelete]
|
|
||||||
Type: filesandordirs; Name: "{app}"
|
|
||||||
|
|
||||||
[Files]
|
|
||||||
Source: "Redist\msvcp71.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
||||||
Source: "Redist\msvcr71.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
||||||
Source: "..\content\*"; DestDir: "{app}\content"; Flags: ignoreversion recursesubdirs
|
|
||||||
Source: "..\Blocks3D.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
|
||||||
|
|
||||||
[Registry]
|
|
||||||
|
|
||||||
|
|
||||||
[Run]
|
|
||||||
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: "desktopicon"; Description: "Create Desktop Icons";
|
|
||||||
Name: "startscut"; Description: "Create Start Menu Icons";
|
|
||||||
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 151 KiB |
@@ -1,7 +1,6 @@
|
|||||||
#define WINVER 0x0400
|
#define WINVER 0x0400
|
||||||
#include <G3DAll.h>
|
#include <G3DAll.h>
|
||||||
#include "DataModelV2/Instance.h"
|
#include "Instance.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Instance::Instance(void)
|
Instance::Instance(void)
|
||||||
@@ -20,8 +19,11 @@ Instance::Instance(const Instance &oinst)
|
|||||||
className = oinst.className;
|
className = oinst.className;
|
||||||
canDelete = oinst.canDelete;
|
canDelete = oinst.canDelete;
|
||||||
listicon = oinst.listicon;
|
listicon = oinst.listicon;
|
||||||
|
//setParent(oinst.parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void Instance::render(RenderDevice* rd)
|
void Instance::render(RenderDevice* rd)
|
||||||
{
|
{
|
||||||
for(size_t i = 0; i < children.size(); i++)
|
for(size_t i = 0; i < children.size(); i++)
|
||||||
@@ -30,14 +32,6 @@ void Instance::render(RenderDevice* rd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Instance::renderName(RenderDevice* rd)
|
|
||||||
{
|
|
||||||
for(size_t i = 0; i < children.size(); i++)
|
|
||||||
{
|
|
||||||
children[i]->renderName(rd);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void Instance::update()
|
void Instance::update()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@@ -120,6 +114,21 @@ std::vector<Instance* > Instance::getAllChildren()
|
|||||||
return children;
|
return children;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::vector<Instance* > Instance::compileAndGetPVVector()
|
||||||
|
{
|
||||||
|
std::vector<Instance* > totalchildren;
|
||||||
|
if(!children.empty())
|
||||||
|
{
|
||||||
|
for(size_t i = 0; i < children.size(); i++)
|
||||||
|
{
|
||||||
|
std::vector<Instance* > subchildren = children.at(i)->compileAndGetPVVector();
|
||||||
|
if(!subchildren.empty())
|
||||||
|
totalchildren.insert(totalchildren.end(), subchildren.begin(), subchildren.end());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return totalchildren;
|
||||||
|
}
|
||||||
|
|
||||||
void Instance::setParent(Instance* newParent)
|
void Instance::setParent(Instance* newParent)
|
||||||
{
|
{
|
||||||
if(parent != NULL)
|
if(parent != NULL)
|
||||||
@@ -145,10 +154,6 @@ void Instance::addChild(Instance* newChild)
|
|||||||
|
|
||||||
void Instance::clearChildren()
|
void Instance::clearChildren()
|
||||||
{
|
{
|
||||||
for (size_t i = 0; i < children.size(); i++)
|
|
||||||
{
|
|
||||||
delete children.at(i);
|
|
||||||
}
|
|
||||||
children.clear();
|
children.clear();
|
||||||
}
|
}
|
||||||
void Instance::removeChild(Instance* oldChild)
|
void Instance::removeChild(Instance* oldChild)
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include <G3DAll.h>
|
#include <G3DAll.h>
|
||||||
#include "propertyGrid.h"
|
#include "propertyGrid.h"
|
||||||
#include "map"
|
|
||||||
|
|
||||||
class Instance
|
class Instance
|
||||||
{
|
{
|
||||||
@@ -12,13 +11,12 @@ 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::string getClassName();
|
std::string getClassName();
|
||||||
Instance* findFirstChild(std::string);
|
Instance* findFirstChild(std::string);
|
||||||
std::vector<Instance* > getChildren();
|
std::vector<Instance* > getChildren();
|
||||||
std::vector<Instance* > getAllChildren();
|
std::vector<Instance* > getAllChildren();
|
||||||
|
std::vector<Instance* > compileAndGetPVVector();
|
||||||
virtual void setParent(Instance*);
|
virtual void setParent(Instance*);
|
||||||
void setName(std::string newName);
|
void setName(std::string newName);
|
||||||
void addChild(Instance*);
|
void addChild(Instance*);
|
||||||
@@ -30,9 +28,9 @@ public:
|
|||||||
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
int listicon;
|
int listicon;
|
||||||
protected:
|
protected:
|
||||||
|
std::vector<Instance*> children; // All children.
|
||||||
std::string className;
|
std::string className;
|
||||||
Instance* parent; // Another pointer.
|
Instance* parent; // Another pointer.
|
||||||
PROPGRIDITEM createPGI(LPSTR catalog, LPSTR propName, LPSTR propDesc, LPARAM curVal, INT type, TCHAR choices[] = NULL);
|
PROPGRIDITEM createPGI(LPSTR catalog, LPSTR propName, LPSTR propDesc, LPARAM curVal, INT type, TCHAR choices[] = NULL);
|
||||||
private:
|
|
||||||
static const std::map<std::string, Instance> g_logLevelsDescriptions;
|
|
||||||
};
|
};
|
||||||
73
LevelInstance.cpp
Normal file
73
LevelInstance.cpp
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
#include "LevelInstance.h"
|
||||||
|
|
||||||
|
LevelInstance::LevelInstance(void)
|
||||||
|
{
|
||||||
|
Instance::Instance();
|
||||||
|
name = "Level";
|
||||||
|
winMessage = "You Won!";
|
||||||
|
loseMessage = "You Lost. Try Again";
|
||||||
|
timer = 60.0F;
|
||||||
|
score = 0;
|
||||||
|
canDelete = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
LevelInstance::~LevelInstance(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
char timerTxt[12];
|
||||||
|
char scoreTxt[12];
|
||||||
|
std::vector<PROPGRIDITEM> LevelInstance::getProperties()
|
||||||
|
{
|
||||||
|
std::vector<PROPGRIDITEM> properties = Instance::getProperties();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
properties.push_back(createPGI("Messages",
|
||||||
|
"WinMessage",
|
||||||
|
"The message that shows when the player wins.",
|
||||||
|
(LPARAM)winMessage.c_str(),
|
||||||
|
PIT_EDIT));
|
||||||
|
properties.push_back(createPGI("Messages",
|
||||||
|
"LoseMessage",
|
||||||
|
"The message that shows when the player loses.",
|
||||||
|
(LPARAM)loseMessage.c_str(),
|
||||||
|
PIT_EDIT));
|
||||||
|
|
||||||
|
|
||||||
|
sprintf_s(timerTxt, "%g", timer);
|
||||||
|
sprintf_s(scoreTxt, "%d", score);
|
||||||
|
properties.push_back(createPGI("Gameplay",
|
||||||
|
"InitialTimerValue",
|
||||||
|
"The ammount of time in seconds the player has to complete this level.\r\n\r\nPut 0 if time is limitless.",
|
||||||
|
(LPARAM)timerTxt,
|
||||||
|
PIT_EDIT));
|
||||||
|
properties.push_back(createPGI("Gameplay",
|
||||||
|
"InitialScoreValue",
|
||||||
|
"The ammount of points the player starts with.",
|
||||||
|
(LPARAM)scoreTxt,
|
||||||
|
PIT_EDIT));
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
void LevelInstance::PropUpdate(LPPROPGRIDITEM &pItem)
|
||||||
|
{
|
||||||
|
if(strcmp(pItem->lpszPropName, "InitialTimerValue") == 0)
|
||||||
|
{
|
||||||
|
timer = atoi((LPSTR)pItem->lpCurValue);
|
||||||
|
}
|
||||||
|
if(strcmp(pItem->lpszPropName, "InitialScoreValue") == 0)
|
||||||
|
{
|
||||||
|
score = atof((LPSTR)pItem->lpCurValue);
|
||||||
|
}
|
||||||
|
if(strcmp(pItem->lpszPropName, "LoseMessage") == 0)
|
||||||
|
{
|
||||||
|
loseMessage = (LPSTR)pItem->lpCurValue;
|
||||||
|
}
|
||||||
|
if(strcmp(pItem->lpszPropName, "WinMessage") == 0)
|
||||||
|
{
|
||||||
|
winMessage = (LPSTR)pItem->lpCurValue;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Instance::PropUpdate(pItem);
|
||||||
|
}
|
||||||
@@ -7,19 +7,10 @@ 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);
|
|
||||||
};
|
};
|
||||||
@@ -1,9 +1,7 @@
|
|||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "DataModelV2/Instance.h"
|
#include "Instance.h"
|
||||||
#include "Listener/ModeSelectionListener.h"
|
#include "ModeSelectionListener.h"
|
||||||
#include "Application.h"
|
#include "Application.h"
|
||||||
#include "Tool/ArrowTool.h"
|
|
||||||
#include "Tool/DraggerTool.h"
|
|
||||||
|
|
||||||
void ModeSelectionListener::onButton1MouseClick(BaseButtonInstance* button)
|
void ModeSelectionListener::onButton1MouseClick(BaseButtonInstance* button)
|
||||||
{
|
{
|
||||||
@@ -22,14 +20,9 @@ void ModeSelectionListener::onButton1MouseClick(BaseButtonInstance* button)
|
|||||||
|
|
||||||
button->selected = true;
|
button->selected = true;
|
||||||
if(button->name == "Cursor")
|
if(button->name == "Cursor")
|
||||||
g_usableApp->changeTool(new ArrowTool());
|
g_usableApp->setMode(CURSOR);
|
||||||
else if(button->name == "Resize")
|
else if(button->name == "Resize")
|
||||||
{
|
|
||||||
g_usableApp->setMode(RESIZE);
|
g_usableApp->setMode(RESIZE);
|
||||||
}
|
|
||||||
else if(button->name == "Arrows")
|
else if(button->name == "Arrows")
|
||||||
{
|
g_usableApp->setMode(ARROWS);
|
||||||
g_usableApp->changeTool(new DraggerTool());
|
|
||||||
g_usableApp->setMode(NULL);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
Open Dynamics Engine
|
|
||||||
|
|
||||||
Copyright (c) 2001-2004,
|
|
||||||
Russell L. Smith.
|
|
||||||
|
|
||||||
All rights reserved.
|
|
||||||
80
PVInstance.cpp
Normal file
80
PVInstance.cpp
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
#include "PVInstance.h"
|
||||||
|
#include "WorkspaceInstance.h"
|
||||||
|
|
||||||
|
PVInstance::PVInstance(void)
|
||||||
|
{
|
||||||
|
Instance::Instance();
|
||||||
|
nameShown = false;
|
||||||
|
className = "PVInstance";
|
||||||
|
listicon = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
PVInstance::PVInstance(const PVInstance &oinst)
|
||||||
|
{
|
||||||
|
Instance::Instance(oinst);
|
||||||
|
}
|
||||||
|
|
||||||
|
PVInstance::~PVInstance(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void PVInstance::postRender(RenderDevice* rd)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void PVInstance::render(RenderDevice* rd)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void PVInstance::setParent(Instance* newParent)
|
||||||
|
{
|
||||||
|
if(parent != NULL)
|
||||||
|
{
|
||||||
|
Instance* workspace = parent;
|
||||||
|
while(workspace != NULL)
|
||||||
|
{
|
||||||
|
if(WorkspaceInstance* wsp = dynamic_cast<WorkspaceInstance*>(workspace))
|
||||||
|
{
|
||||||
|
wsp->removeFromPVector(this);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
workspace = workspace->getParent();
|
||||||
|
}
|
||||||
|
parent->removeChild(this);
|
||||||
|
}
|
||||||
|
parent = newParent;
|
||||||
|
if(newParent != NULL)
|
||||||
|
{
|
||||||
|
Instance* workspace = parent;
|
||||||
|
while(workspace != NULL)
|
||||||
|
{
|
||||||
|
if(WorkspaceInstance* wsp = dynamic_cast<WorkspaceInstance*>(workspace))
|
||||||
|
{
|
||||||
|
wsp->addToPVector(this);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
workspace = workspace->getParent();
|
||||||
|
}
|
||||||
|
newParent->addChild(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
std::vector<PROPGRIDITEM> PVInstance::getProperties()
|
||||||
|
{
|
||||||
|
std::vector<PROPGRIDITEM> properties = Instance::getProperties();
|
||||||
|
properties.push_back(createPGI(
|
||||||
|
"Item",
|
||||||
|
"NameShown",
|
||||||
|
"This chooses whether the item name is shown",
|
||||||
|
nameShown,
|
||||||
|
PIT_CHECK));
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
void PVInstance::PropUpdate(LPPROPGRIDITEM &pItem)
|
||||||
|
{
|
||||||
|
if(strcmp(pItem->lpszPropName, "NameShown") == 0)
|
||||||
|
{
|
||||||
|
nameShown = (bool)pItem->lpCurValue;
|
||||||
|
}
|
||||||
|
else Instance::PropUpdate(pItem);
|
||||||
|
}
|
||||||
17
PVInstance.h
Normal file
17
PVInstance.h
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "instance.h"
|
||||||
|
|
||||||
|
class PVInstance :
|
||||||
|
public Instance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
PVInstance(void);
|
||||||
|
~PVInstance(void);
|
||||||
|
PVInstance(const PVInstance &oinst);
|
||||||
|
virtual void postRender(RenderDevice* rd);
|
||||||
|
virtual void setParent(Instance* newParent);
|
||||||
|
virtual std::vector<PROPGRIDITEM> getProperties();
|
||||||
|
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
|
virtual void render(RenderDevice* rd);
|
||||||
|
bool nameShown;
|
||||||
|
};
|
||||||
1028
PartInstance.cpp
Normal file
1028
PartInstance.cpp
Normal file
File diff suppressed because it is too large
Load Diff
72
PartInstance.h
Normal file
72
PartInstance.h
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "PVInstance.h"
|
||||||
|
#include "Enum.h"
|
||||||
|
|
||||||
|
#define NEW_BOX_RENDER
|
||||||
|
|
||||||
|
class PartInstance : public PVInstance
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
PartInstance(void);
|
||||||
|
PartInstance(const PartInstance &oinst);
|
||||||
|
Instance* clone() const { return new PartInstance(*this); }
|
||||||
|
virtual void PartInstance::postRender(RenderDevice* rd);
|
||||||
|
~PartInstance(void);
|
||||||
|
virtual void render(RenderDevice*);
|
||||||
|
Vector3 velocity;
|
||||||
|
Enum::SurfaceType::Value top;
|
||||||
|
Enum::SurfaceType::Value front;
|
||||||
|
Enum::SurfaceType::Value right;
|
||||||
|
Enum::SurfaceType::Value back;
|
||||||
|
Enum::SurfaceType::Value left;
|
||||||
|
Enum::SurfaceType::Value bottom;
|
||||||
|
Enum::Shape::Value shape;
|
||||||
|
CoordinateFrame cFrame;
|
||||||
|
Color3 color;
|
||||||
|
Vector3 getPosition();
|
||||||
|
void setPosition(Vector3);
|
||||||
|
CoordinateFrame getCFrame();
|
||||||
|
void setCFrame(CoordinateFrame);
|
||||||
|
Box getBox();
|
||||||
|
Box getScaledBox();
|
||||||
|
CoordinateFrame getCFrameRenderBased();
|
||||||
|
Vector3 getSize();
|
||||||
|
void setSize(Vector3);
|
||||||
|
void setShape(Enum::Shape::Value shape);
|
||||||
|
bool canCollide;
|
||||||
|
bool anchored;
|
||||||
|
Vector3 rotVelocity;
|
||||||
|
bool collides(Box);
|
||||||
|
virtual std::vector<PROPGRIDITEM> getProperties();
|
||||||
|
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
|
||||||
|
#ifdef NEW_BOX_RENDER
|
||||||
|
void addVertex(Vector3 vertexPos,Color3 color);
|
||||||
|
void addNormals(Vector3 normal);
|
||||||
|
void addSingularNormal(Vector3 normal);
|
||||||
|
void addTriangle(Vector3 vertexPos,Vector3 vertexPos2, Vector3 vertexPos3);
|
||||||
|
void addSmoothTriangle(Vector3 vertexPos,Vector3 vertexPos2, Vector3 vertexPos3);
|
||||||
|
void makeSmoothFace(int vertex1, int vertex2, int vertex3);
|
||||||
|
void addPlus(Vector3 v1);
|
||||||
|
void addPlus2(Vector3 v1);
|
||||||
|
void debugPrintVertexIDs(RenderDevice* rd, GFontRef font, Matrix3 camRot);
|
||||||
|
void makeFace(int vertex1, int vertex2, int vertex3);
|
||||||
|
bool isUniqueVertex(Vector3 pos);
|
||||||
|
#endif
|
||||||
|
private:
|
||||||
|
Vector3 position;
|
||||||
|
Vector3 size;
|
||||||
|
float _bevelSize;
|
||||||
|
int _parseVert;
|
||||||
|
int _debugTimer;
|
||||||
|
std::vector<Vector3> _debugUniqueVertices;
|
||||||
|
#ifdef NEW_BOX_RENDER
|
||||||
|
std::vector<GLfloat> _vertices;
|
||||||
|
std::vector<GLfloat> _normals;
|
||||||
|
#else
|
||||||
|
GLfloat _vertices[96];
|
||||||
|
#endif
|
||||||
|
std::vector<GLushort> _indices;
|
||||||
|
bool changed;
|
||||||
|
Box itemBox;
|
||||||
|
GLuint glList;
|
||||||
|
};
|
||||||
BIN
Parts.bmp
BIN
Parts.bmp
Binary file not shown.
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,588 +0,0 @@
|
|||||||
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
|
|
||||||
<External>null</External>
|
|
||||||
<External>nil</External>
|
|
||||||
<Item class="Workspace" referent="RBX0">
|
|
||||||
<Properties>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<Ref name="CurrentCamera">RBX1</Ref>
|
|
||||||
<double name="DistributedGameTime">0</double>
|
|
||||||
<CoordinateFrame name="ModelInPrimary">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<string name="Name">Workspace</string>
|
|
||||||
<Ref name="PrimaryPart">null</Ref>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
<Item class="Camera" referent="RBX1">
|
|
||||||
<Properties>
|
|
||||||
<Ref name="CameraSubject">null</Ref>
|
|
||||||
<token name="CameraType">0</token>
|
|
||||||
<CoordinateFrame name="CoordinateFrame">
|
|
||||||
<X>-2.9603548</X>
|
|
||||||
<Y>115.389259</Y>
|
|
||||||
<Z>44.9416084</Z>
|
|
||||||
<R00>0.112786211</R00>
|
|
||||||
<R01>0.522245169</R01>
|
|
||||||
<R02>-0.845304191</R02>
|
|
||||||
<R10>-2.22539209e-009</R10>
|
|
||||||
<R11>0.850732446</R11>
|
|
||||||
<R12>0.525598884</R12>
|
|
||||||
<R20>0.993619263</R20>
|
|
||||||
<R21>-0.0592803061</R21>
|
|
||||||
<R22>0.0959508941</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<CoordinateFrame name="Focus">
|
|
||||||
<X>13.9457293</X>
|
|
||||||
<Y>104.877281</Y>
|
|
||||||
<Z>43.0225906</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<string name="Name">Camera</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX2">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">21</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>87.0174942</X>
|
|
||||||
<Y>48.0466728</Y>
|
|
||||||
<Z>25.0001202</Z>
|
|
||||||
<R00>-0.969314575</R00>
|
|
||||||
<R01>0.245822206</R01>
|
|
||||||
<R02>4.6762093e-006</R02>
|
|
||||||
<R10>0.245822206</R10>
|
|
||||||
<R11>0.969314933</R11>
|
|
||||||
<R12>6.9744442e-007</R12>
|
|
||||||
<R20>-4.35209677e-006</R20>
|
|
||||||
<R21>1.87532066e-006</R21>
|
|
||||||
<R22>-0.999999642</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">2</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>6</X>
|
|
||||||
<Y>6</Y>
|
|
||||||
<Z>6</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX3">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>108.911415</X>
|
|
||||||
<Y>38.7803154</Y>
|
|
||||||
<Z>27.5002155</Z>
|
|
||||||
<R00>-0.969314575</R00>
|
|
||||||
<R01>0.245822206</R01>
|
|
||||||
<R02>4.6762093e-006</R02>
|
|
||||||
<R10>0.245822206</R10>
|
|
||||||
<R11>0.969314933</R11>
|
|
||||||
<R12>6.9744442e-007</R12>
|
|
||||||
<R20>-4.35209677e-006</R20>
|
|
||||||
<R21>1.87532066e-006</R21>
|
|
||||||
<R22>-0.999999642</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">1</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>53</X>
|
|
||||||
<Y>1.20000005</Y>
|
|
||||||
<Z>1</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX4">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>141.499893</X>
|
|
||||||
<Y>38.1177788</Y>
|
|
||||||
<Z>27.0499611</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>-1.07914104e-006</R01>
|
|
||||||
<R02>-4.49890285e-006</R02>
|
|
||||||
<R10>-5.98966139e-008</R10>
|
|
||||||
<R11>0.969315231</R11>
|
|
||||||
<R12>-0.245820925</R12>
|
|
||||||
<R20>4.6261307e-006</R20>
|
|
||||||
<R21>0.245820925</R21>
|
|
||||||
<R22>0.969315231</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">1</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>1</X>
|
|
||||||
<Y>16.8000011</Y>
|
|
||||||
<Z>12</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX5">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>108.911438</X>
|
|
||||||
<Y>38.7803192</Y>
|
|
||||||
<Z>22.5002174</Z>
|
|
||||||
<R00>-0.969314575</R00>
|
|
||||||
<R01>0.245822206</R01>
|
|
||||||
<R02>4.6762093e-006</R02>
|
|
||||||
<R10>0.245822206</R10>
|
|
||||||
<R11>0.969314933</R11>
|
|
||||||
<R12>6.9744442e-007</R12>
|
|
||||||
<R20>-4.35209677e-006</R20>
|
|
||||||
<R21>1.87532066e-006</R21>
|
|
||||||
<R22>-0.999999642</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">1</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>53</X>
|
|
||||||
<Y>1.20000005</Y>
|
|
||||||
<Z>1</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX6">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>140.499786</X>
|
|
||||||
<Y>24.7802944</Y>
|
|
||||||
<Z>47.911438</Z>
|
|
||||||
<R00>4.35209677e-006</R00>
|
|
||||||
<R01>-1.87532066e-006</R01>
|
|
||||||
<R02>0.999999642</R02>
|
|
||||||
<R10>0.245822206</R10>
|
|
||||||
<R11>0.969314933</R11>
|
|
||||||
<R12>6.9744442e-007</R12>
|
|
||||||
<R20>-0.969314575</R20>
|
|
||||||
<R21>0.245822206</R21>
|
|
||||||
<R22>4.6762093e-006</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">1</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>53</X>
|
|
||||||
<Y>1.20000005</Y>
|
|
||||||
<Z>1</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX7">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>135.499786</X>
|
|
||||||
<Y>24.7802944</Y>
|
|
||||||
<Z>47.9114227</Z>
|
|
||||||
<R00>4.35515585e-006</R00>
|
|
||||||
<R01>-1.85873387e-006</R01>
|
|
||||||
<R02>0.999999881</R02>
|
|
||||||
<R10>0.245822236</R10>
|
|
||||||
<R11>0.969314933</R11>
|
|
||||||
<R12>7.14274279e-007</R12>
|
|
||||||
<R20>-0.969314814</R20>
|
|
||||||
<R21>0.245822236</R21>
|
|
||||||
<R22>4.67732343e-006</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">1</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>53</X>
|
|
||||||
<Y>1.20000005</Y>
|
|
||||||
<Z>1</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
</Item>
|
|
||||||
<Item class="RunService" referent="RBX8">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Run Service</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX9</External>
|
|
||||||
<External>RBX10</External>
|
|
||||||
<Item class="Players" referent="RBX11">
|
|
||||||
<Properties>
|
|
||||||
<int name="MaxPlayers">12</int>
|
|
||||||
<string name="Name">Players</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="StarterPack" referent="RBX12">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">StarterPack</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="SoundService" referent="RBX13">
|
|
||||||
<Properties>
|
|
||||||
<token name="AmbientReverb">0</token>
|
|
||||||
<float name="DistanceFactor">10</float>
|
|
||||||
<float name="DopplerScale">1</float>
|
|
||||||
<string name="Name">Soundscape</string>
|
|
||||||
<float name="RolloffScale">1</float>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
<External>RBX14</External>
|
|
||||||
<External>RBX15</External>
|
|
||||||
<External>RBX16</External>
|
|
||||||
<External>RBX17</External>
|
|
||||||
<External>RBX18</External>
|
|
||||||
<External>RBX19</External>
|
|
||||||
<External>RBX20</External>
|
|
||||||
<External>RBX21</External>
|
|
||||||
<External>RBX22</External>
|
|
||||||
<External>RBX23</External>
|
|
||||||
<External>RBX24</External>
|
|
||||||
<External>RBX25</External>
|
|
||||||
<External>RBX26</External>
|
|
||||||
<External>RBX27</External>
|
|
||||||
</Item>
|
|
||||||
<Item class="ContentProvider" referent="RBX28">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Instance</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="PhysicsService" referent="RBX29">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">PhysicsService</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX30</External>
|
|
||||||
<Item class="Selection" referent="RBX31">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Selection</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX32</External>
|
|
||||||
<Item class="Lighting" referent="RBX33">
|
|
||||||
<Properties>
|
|
||||||
<Color3 name="Ambient">4286940549</Color3>
|
|
||||||
<float name="Brightness">1</float>
|
|
||||||
<Color3 name="ColorShift_Bottom">4278190080</Color3>
|
|
||||||
<Color3 name="ColorShift_Top">4278190080</Color3>
|
|
||||||
<float name="GeographicLatitude">41.7332993</float>
|
|
||||||
<string name="Name">Lighting</string>
|
|
||||||
<Color3 name="ShadowColor">4290295997</Color3>
|
|
||||||
<string name="TimeOfDay">14:00:00</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="ControllerService" referent="RBX34">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Instance</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="ChangeHistoryService" referent="RBX35">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">ChangeHistoryService</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX36</External>
|
|
||||||
</roblox>
|
|
||||||
586202
Physics Test/Roblox HQ.rbxl
586202
Physics Test/Roblox HQ.rbxl
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,578 +0,0 @@
|
|||||||
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
|
|
||||||
<External>null</External>
|
|
||||||
<External>nil</External>
|
|
||||||
<Item class="RunService">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Run Service</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Selection">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Selection</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Workspace">
|
|
||||||
<Properties>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<Ref name="CurrentCamera">RBX0</Ref>
|
|
||||||
<CoordinateFrame name="ModelInPrimary">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<string name="Name">Workspace</string>
|
|
||||||
<Ref name="PrimaryPart">RBX1</Ref>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
<Item class="Camera" referent="RBX0">
|
|
||||||
<Properties>
|
|
||||||
<Ref name="CameraSubject">null</Ref>
|
|
||||||
<token name="CameraType">0</token>
|
|
||||||
<CoordinateFrame name="CoordinateFrame">
|
|
||||||
<X>202.42688</X>
|
|
||||||
<Y>55.4607582</Y>
|
|
||||||
<Z>3.2956109</Z>
|
|
||||||
<R00>0.0106770508</R00>
|
|
||||||
<R01>0.00328579429</R01>
|
|
||||||
<R02>0.999937654</R02>
|
|
||||||
<R10>4.65661287e-010</R10>
|
|
||||||
<R11>0.999994576</R11>
|
|
||||||
<R12>-0.00328598148</R12>
|
|
||||||
<R20>-0.999943018</R20>
|
|
||||||
<R21>3.50852497e-005</R21>
|
|
||||||
<R22>0.010676994</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<CoordinateFrame name="Focus">
|
|
||||||
<X>182.428116</X>
|
|
||||||
<Y>55.5264778</Y>
|
|
||||||
<Z>3.08207107</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<string name="Name">Camera</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX1">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">37</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>2.79999995</Y>
|
|
||||||
<Z>-4</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<bool name="CastsShadows">false</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="Cullable">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">true</bool>
|
|
||||||
<string name="Name">Part</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>64</X>
|
|
||||||
<Y>1</Y>
|
|
||||||
<Z>248</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>78.3000031</Y>
|
|
||||||
<Z>-96</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<bool name="CastsShadows">false</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="Cullable">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Part</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>2</Y>
|
|
||||||
<Z>2</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>79.3000031</Y>
|
|
||||||
<Z>-62</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<bool name="CastsShadows">false</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="Cullable">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Part</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>4</X>
|
|
||||||
<Y>4</Y>
|
|
||||||
<Z>4</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>81.3000031</Y>
|
|
||||||
<Z>-25</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<bool name="CastsShadows">false</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="Cullable">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Part</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>8</X>
|
|
||||||
<Y>8</Y>
|
|
||||||
<Z>8</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>85.3000031</Y>
|
|
||||||
<Z>18</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<bool name="CastsShadows">false</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="Cullable">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Part</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>16</X>
|
|
||||||
<Y>16</Y>
|
|
||||||
<Z>16</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">0</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">23</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>93.3000031</Y>
|
|
||||||
<Z>73</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<bool name="CastsShadows">false</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="Cullable">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Part</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">0</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>32</X>
|
|
||||||
<Y>32</Y>
|
|
||||||
<Z>32</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
</Item>
|
|
||||||
<External>RBX2</External>
|
|
||||||
<External>RBX3</External>
|
|
||||||
<Item class="Players">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Players</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<int name="maxPlayers">10</int>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="StarterPack">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">StarterPack</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="SoundService">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">SoundService</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<float name="distancefactor">10</float>
|
|
||||||
<float name="dopplerscale">1</float>
|
|
||||||
<float name="rolloffscale">1</float>
|
|
||||||
</Properties>
|
|
||||||
<External>RBX4</External>
|
|
||||||
<External>RBX5</External>
|
|
||||||
<External>RBX6</External>
|
|
||||||
<External>RBX7</External>
|
|
||||||
<External>RBX8</External>
|
|
||||||
<External>RBX9</External>
|
|
||||||
<External>RBX10</External>
|
|
||||||
<External>RBX11</External>
|
|
||||||
<External>RBX12</External>
|
|
||||||
<External>RBX13</External>
|
|
||||||
<External>RBX14</External>
|
|
||||||
<External>RBX15</External>
|
|
||||||
<External>RBX16</External>
|
|
||||||
<External>RBX17</External>
|
|
||||||
</Item>
|
|
||||||
<Item class="Lighting">
|
|
||||||
<Properties>
|
|
||||||
<Color3 name="BottomAmbientV9">4286220152</Color3>
|
|
||||||
<Color3 name="ClearColor">4278190080</Color3>
|
|
||||||
<string name="Name">Lighting</string>
|
|
||||||
<Color3 name="SpotLightV9">4290822336</Color3>
|
|
||||||
<string name="TimeOfDay">14:00:00</string>
|
|
||||||
<Color3 name="TopAmbientV9">4292006362</Color3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="ControllerService">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Instance</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX18</External>
|
|
||||||
<External>RBX19</External>
|
|
||||||
<External>RBX20</External>
|
|
||||||
</roblox>
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,660 +0,0 @@
|
|||||||
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
|
|
||||||
<External>null</External>
|
|
||||||
<External>nil</External>
|
|
||||||
<Item class="Workspace" referent="RBX0">
|
|
||||||
<Properties>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<Ref name="CurrentCamera">RBX1</Ref>
|
|
||||||
<double name="DistributedGameTime">0</double>
|
|
||||||
<CoordinateFrame name="ModelInPrimary">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<string name="Name">Workspace</string>
|
|
||||||
<Ref name="PrimaryPart">null</Ref>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
<Item class="Camera" referent="RBX1">
|
|
||||||
<Properties>
|
|
||||||
<Ref name="CameraSubject">null</Ref>
|
|
||||||
<token name="CameraType">0</token>
|
|
||||||
<CoordinateFrame name="CoordinateFrame">
|
|
||||||
<X>-62.3436203</X>
|
|
||||||
<Y>290.964996</Y>
|
|
||||||
<Z>130.047195</Z>
|
|
||||||
<R00>0.900759101</R00>
|
|
||||||
<R01>0.385544956</R01>
|
|
||||||
<R02>-0.199970409</R02>
|
|
||||||
<R10>3.07713033e-009</R10>
|
|
||||||
<R11>0.460422784</R11>
|
|
||||||
<R12>0.887699783</R12>
|
|
||||||
<R20>0.434319079</R20>
|
|
||||||
<R21>-0.799603641</R21>
|
|
||||||
<R22>0.414730012</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<CoordinateFrame name="Focus">
|
|
||||||
<X>-58.3442116</X>
|
|
||||||
<Y>273.210999</Y>
|
|
||||||
<Z>121.752594</Z>
|
|
||||||
<R00>1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<string name="Name">Camera</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX2">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">true</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">37</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0.600000024</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>-0</R02>
|
|
||||||
<R10>-0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>-0</R12>
|
|
||||||
<R20>-0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">1</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">true</bool>
|
|
||||||
<string name="Name">Baseplate</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>512</X>
|
|
||||||
<Y>1.20000005</Y>
|
|
||||||
<Z>512</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX3">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">28</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>-2</X>
|
|
||||||
<Y>5.69999981</Y>
|
|
||||||
<Z>1</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>9</Y>
|
|
||||||
<Z>2</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX4">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">28</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>6</X>
|
|
||||||
<Y>5.69999981</Y>
|
|
||||||
<Z>1</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>9</Y>
|
|
||||||
<Z>2</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX5">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">28</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>6</X>
|
|
||||||
<Y>5.69999981</Y>
|
|
||||||
<Z>-7</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>9</Y>
|
|
||||||
<Z>2</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX6">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">28</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>-2</X>
|
|
||||||
<Y>5.69999981</Y>
|
|
||||||
<Z>-7</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>9</Y>
|
|
||||||
<Z>2</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX7">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">28</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>11.1999998</Y>
|
|
||||||
<Z>-3</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>10</X>
|
|
||||||
<Y>2</Y>
|
|
||||||
<Z>10</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="Part" referent="RBX8">
|
|
||||||
<Properties>
|
|
||||||
<bool name="Anchored">false</bool>
|
|
||||||
<float name="BackParamA">-0.5</float>
|
|
||||||
<float name="BackParamB">0.5</float>
|
|
||||||
<token name="BackSurface">0</token>
|
|
||||||
<token name="BackSurfaceInput">0</token>
|
|
||||||
<float name="BottomParamA">-0.5</float>
|
|
||||||
<float name="BottomParamB">0.5</float>
|
|
||||||
<token name="BottomSurface">4</token>
|
|
||||||
<token name="BottomSurfaceInput">0</token>
|
|
||||||
<int name="BrickColor">28</int>
|
|
||||||
<CoordinateFrame name="CFrame">
|
|
||||||
<X>2</X>
|
|
||||||
<Y>13.1999998</Y>
|
|
||||||
<Z>-3</Z>
|
|
||||||
<R00>-1</R00>
|
|
||||||
<R01>0</R01>
|
|
||||||
<R02>0</R02>
|
|
||||||
<R10>0</R10>
|
|
||||||
<R11>1</R11>
|
|
||||||
<R12>0</R12>
|
|
||||||
<R20>0</R20>
|
|
||||||
<R21>0</R21>
|
|
||||||
<R22>-1</R22>
|
|
||||||
</CoordinateFrame>
|
|
||||||
<bool name="CanCollide">true</bool>
|
|
||||||
<token name="Controller">0</token>
|
|
||||||
<bool name="ControllerFlagShown">true</bool>
|
|
||||||
<bool name="DraggingV1">false</bool>
|
|
||||||
<float name="Elasticity">0.5</float>
|
|
||||||
<token name="FormFactor">0</token>
|
|
||||||
<float name="Friction">0.300000012</float>
|
|
||||||
<float name="FrontParamA">-0.5</float>
|
|
||||||
<float name="FrontParamB">0.5</float>
|
|
||||||
<token name="FrontSurface">0</token>
|
|
||||||
<token name="FrontSurfaceInput">0</token>
|
|
||||||
<float name="LeftParamA">-0.5</float>
|
|
||||||
<float name="LeftParamB">0.5</float>
|
|
||||||
<token name="LeftSurface">0</token>
|
|
||||||
<token name="LeftSurfaceInput">0</token>
|
|
||||||
<bool name="Locked">false</bool>
|
|
||||||
<string name="Name">Smooth Block Model</string>
|
|
||||||
<float name="Reflectance">0</float>
|
|
||||||
<float name="RightParamA">-0.5</float>
|
|
||||||
<float name="RightParamB">0.5</float>
|
|
||||||
<token name="RightSurface">0</token>
|
|
||||||
<token name="RightSurfaceInput">0</token>
|
|
||||||
<Vector3 name="RotVelocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<float name="TopParamA">-0.5</float>
|
|
||||||
<float name="TopParamB">0.5</float>
|
|
||||||
<token name="TopSurface">3</token>
|
|
||||||
<token name="TopSurfaceInput">0</token>
|
|
||||||
<float name="Transparency">0</float>
|
|
||||||
<Vector3 name="Velocity">
|
|
||||||
<X>0</X>
|
|
||||||
<Y>0</Y>
|
|
||||||
<Z>0</Z>
|
|
||||||
</Vector3>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
<token name="shape">1</token>
|
|
||||||
<Vector3 name="size">
|
|
||||||
<X>6</X>
|
|
||||||
<Y>2</Y>
|
|
||||||
<Z>6</Z>
|
|
||||||
</Vector3>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
</Item>
|
|
||||||
<Item class="RunService" referent="RBX9">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Run Service</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX10</External>
|
|
||||||
<External>RBX11</External>
|
|
||||||
<Item class="Players" referent="RBX12">
|
|
||||||
<Properties>
|
|
||||||
<int name="MaxPlayers">12</int>
|
|
||||||
<string name="Name">Players</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="StarterPack" referent="RBX13">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">StarterPack</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="SoundService" referent="RBX14">
|
|
||||||
<Properties>
|
|
||||||
<token name="AmbientReverb">0</token>
|
|
||||||
<float name="DistanceFactor">10</float>
|
|
||||||
<float name="DopplerScale">1</float>
|
|
||||||
<string name="Name">Soundscape</string>
|
|
||||||
<float name="RolloffScale">1</float>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
<External>RBX15</External>
|
|
||||||
<External>RBX16</External>
|
|
||||||
<External>RBX17</External>
|
|
||||||
<External>RBX18</External>
|
|
||||||
<External>RBX19</External>
|
|
||||||
<External>RBX20</External>
|
|
||||||
<External>RBX21</External>
|
|
||||||
<External>RBX22</External>
|
|
||||||
<External>RBX23</External>
|
|
||||||
<External>RBX24</External>
|
|
||||||
<External>RBX25</External>
|
|
||||||
<External>RBX26</External>
|
|
||||||
<External>RBX27</External>
|
|
||||||
<External>RBX28</External>
|
|
||||||
</Item>
|
|
||||||
<Item class="ContentProvider" referent="RBX29">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Instance</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="PhysicsService" referent="RBX30">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">PhysicsService</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX31</External>
|
|
||||||
<Item class="Selection" referent="RBX32">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Selection</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX33</External>
|
|
||||||
<Item class="Lighting" referent="RBX34">
|
|
||||||
<Properties>
|
|
||||||
<Color3 name="Ambient">4286611584</Color3>
|
|
||||||
<float name="Brightness">1</float>
|
|
||||||
<Color3 name="ColorShift_Bottom">4278190080</Color3>
|
|
||||||
<Color3 name="ColorShift_Top">4278190080</Color3>
|
|
||||||
<float name="GeographicLatitude">41.7332993</float>
|
|
||||||
<string name="Name">Lighting</string>
|
|
||||||
<Color3 name="ShadowColor">4289967032</Color3>
|
|
||||||
<string name="TimeOfDay">14:00:00</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="ControllerService" referent="RBX35">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">Instance</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<Item class="ChangeHistoryService" referent="RBX36">
|
|
||||||
<Properties>
|
|
||||||
<string name="Name">ChangeHistoryService</string>
|
|
||||||
<bool name="archivable">true</bool>
|
|
||||||
</Properties>
|
|
||||||
</Item>
|
|
||||||
<External>RBX37</External>
|
|
||||||
</roblox>
|
|
||||||
@@ -3,9 +3,15 @@
|
|||||||
#include "WindowFunctions.h"
|
#include "WindowFunctions.h"
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
#include "PropertyWindow.h"
|
#include "PropertyWindow.h"
|
||||||
|
#include "Globals.h"
|
||||||
#include "strsafe.h"
|
#include "strsafe.h"
|
||||||
#include "Application.h"
|
#include "Application.h"
|
||||||
|
|
||||||
|
/*typedef struct typPRGP {
|
||||||
|
Instance* instance; // Declare member types
|
||||||
|
Property ∝
|
||||||
|
} PRGP;*/
|
||||||
|
|
||||||
std::vector<PROPGRIDITEM> prop;
|
std::vector<PROPGRIDITEM> prop;
|
||||||
std::vector<Instance*> children;
|
std::vector<Instance*> children;
|
||||||
Instance * selectedInstance;
|
Instance * selectedInstance;
|
||||||
@@ -73,6 +79,7 @@ LRESULT CALLBACK PropProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||||||
break;
|
break;
|
||||||
case WM_DRAWITEM:
|
case WM_DRAWITEM:
|
||||||
{
|
{
|
||||||
|
std::cout << "Drawing?" << "\r\n";
|
||||||
COLORREF clrBackground;
|
COLORREF clrBackground;
|
||||||
COLORREF clrForeground;
|
COLORREF clrForeground;
|
||||||
TEXTMETRIC tm;
|
TEXTMETRIC tm;
|
||||||
@@ -170,8 +177,8 @@ LRESULT CALLBACK PropProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||||||
int ItemIndex = SendMessage((HWND) lParam, (UINT) CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0);
|
int ItemIndex = SendMessage((HWND) lParam, (UINT) CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0);
|
||||||
CHAR ListItem[256];
|
CHAR ListItem[256];
|
||||||
SendMessage((HWND) lParam, (UINT) CB_GETLBTEXT, (WPARAM) ItemIndex, (LPARAM) ListItem);
|
SendMessage((HWND) lParam, (UINT) CB_GETLBTEXT, (WPARAM) ItemIndex, (LPARAM) ListItem);
|
||||||
g_dataModel->getSelectionService()->clearSelection();
|
propWind->ClearProperties();
|
||||||
g_dataModel->getSelectionService()->addSelected(children.at(ItemIndex));
|
g_usableApp->selectInstance(children.at(ItemIndex),propWind);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -201,18 +208,13 @@ LRESULT CALLBACK PropProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyWindow::clearExplorer()
|
void PropertyWindow::refreshExplorer(Instance* selectedInstance)
|
||||||
{
|
{
|
||||||
SendMessage(_explorerComboBox,CB_RESETCONTENT,0,0);
|
|
||||||
SendMessage(_explorerComboBox,CB_SETCURSEL,0,(LPARAM)0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void PropertyWindow::refreshExplorer(std::vector<Instance*> selectedInstances)
|
|
||||||
{
|
|
||||||
Instance * instance = selectedInstances[0];
|
|
||||||
SendMessage(_explorerComboBox,CB_RESETCONTENT,0,0);
|
SendMessage(_explorerComboBox,CB_RESETCONTENT,0,0);
|
||||||
parent = NULL;
|
parent = NULL;
|
||||||
children.clear();
|
children.clear();
|
||||||
|
//g_selectedInstances.clear();
|
||||||
|
//for (unsigned int i=0;i<g_selectedInstances.size();i++) {
|
||||||
children.push_back(selectedInstance);
|
children.push_back(selectedInstance);
|
||||||
SendMessage(_explorerComboBox, CB_ADDSTRING, 0, (LPARAM)selectedInstance->name.c_str());
|
SendMessage(_explorerComboBox, CB_ADDSTRING, 0, (LPARAM)selectedInstance->name.c_str());
|
||||||
if(selectedInstance->getParent() != NULL)
|
if(selectedInstance->getParent() != NULL)
|
||||||
@@ -224,6 +226,7 @@ void PropertyWindow::refreshExplorer(std::vector<Instance*> selectedInstances)
|
|||||||
parent = selectedInstance->getParent();
|
parent = selectedInstance->getParent();
|
||||||
children.push_back(selectedInstance->getParent());
|
children.push_back(selectedInstance->getParent());
|
||||||
}
|
}
|
||||||
|
//children = g_selectedInstances[i]->getChildren();
|
||||||
|
|
||||||
std::vector<Instance*> selectedChildren = selectedInstance->getChildren();
|
std::vector<Instance*> selectedChildren = selectedInstance->getChildren();
|
||||||
for(size_t z = 0; z < selectedChildren.size(); z++)
|
for(size_t z = 0; z < selectedChildren.size(); z++)
|
||||||
@@ -244,7 +247,7 @@ bool PropertyWindow::onCreate(int x, int y, int sx, int sy, HMODULE hThisInstanc
|
|||||||
WS_EX_TOOLWINDOW,
|
WS_EX_TOOLWINDOW,
|
||||||
"propHWND",
|
"propHWND",
|
||||||
"PropertyGrid",
|
"PropertyGrid",
|
||||||
WS_POPUPWINDOW | WS_THICKFRAME | WS_CAPTION,
|
WS_VISIBLE | WS_POPUPWINDOW | WS_THICKFRAME | WS_CAPTION,
|
||||||
CW_USEDEFAULT,
|
CW_USEDEFAULT,
|
||||||
CW_USEDEFAULT,
|
CW_USEDEFAULT,
|
||||||
300,
|
300,
|
||||||
@@ -340,17 +343,11 @@ void PropertyWindow::_resize()
|
|||||||
SetWindowPos(_explorerComboBox, NULL, 0, 0, rect.right, 400, SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE);
|
SetWindowPos(_explorerComboBox, NULL, 0, 0, rect.right, 400, SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyWindow::UpdateSelected(std::vector<Instance *> instances)
|
void PropertyWindow::UpdateSelected(Instance * instance)
|
||||||
{
|
{
|
||||||
if(instances.size() <= 0)
|
|
||||||
{
|
|
||||||
ClearProperties();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
Instance * instance = instances[0];
|
|
||||||
PropGrid_ResetContent(_propGrid);
|
PropGrid_ResetContent(_propGrid);
|
||||||
prop = instance->getProperties();
|
prop = instance->getProperties();
|
||||||
//if (selectedInstance != instance)
|
if (selectedInstance != instance)
|
||||||
{
|
{
|
||||||
selectedInstance = instance;
|
selectedInstance = instance;
|
||||||
for(size_t i = 0; i < prop.size(); i++)
|
for(size_t i = 0; i < prop.size(); i++)
|
||||||
@@ -364,13 +361,12 @@ void PropertyWindow::UpdateSelected(std::vector<Instance *> instances)
|
|||||||
PropGrid_ExpandAllCatalogs(_propGrid);
|
PropGrid_ExpandAllCatalogs(_propGrid);
|
||||||
//SetWindowLongPtr(_propGrid,GWL_USERDATA,(LONG)this);
|
//SetWindowLongPtr(_propGrid,GWL_USERDATA,(LONG)this);
|
||||||
|
|
||||||
refreshExplorer(instances);
|
refreshExplorer(instance);
|
||||||
_resize();
|
_resize();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyWindow::ClearProperties()
|
void PropertyWindow::ClearProperties()
|
||||||
{
|
{
|
||||||
clearExplorer();
|
|
||||||
PropGrid_ResetContent(_propGrid);
|
PropGrid_ResetContent(_propGrid);
|
||||||
}
|
}
|
||||||
@@ -1,18 +1,17 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "DataModelV2/Instance.h"
|
#include "Instance.h"
|
||||||
|
|
||||||
class PropertyWindow {
|
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(std::vector<Instance *> selection);
|
void UpdateSelected(Instance *);
|
||||||
void ClearProperties();
|
void ClearProperties();
|
||||||
void onResize();
|
void onResize();
|
||||||
void refreshExplorer(std::vector<Instance *> selection);
|
void refreshExplorer(Instance* selectedInstance);
|
||||||
HWND _hwndProp;
|
HWND _hwndProp;
|
||||||
private:
|
private:
|
||||||
HWND _propGrid;
|
HWND _propGrid;
|
||||||
HWND _explorerComboBox;
|
HWND _explorerComboBox;
|
||||||
void _resize();
|
void _resize();
|
||||||
void clearExplorer();
|
|
||||||
};
|
};
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
# IMPORTANT -- READ BEFORE CONTRIBUTING
|
|
||||||
Work on DataModel V3 will be starting November 3rd at 3PM PDT! This will mean **many PRs involving DataModel V2 may be immediately rejected until completion!** Progress on DataModelV3 can be tracked/contributed to on the feature/datamodel_v3 branch during this time.
|
|
||||||
|
|
||||||
# ROBLOX 2005 Recreation Project
|
# ROBLOX 2005 Recreation Project
|
||||||
## Why are we doing this?
|
## Why are we doing this?
|
||||||
ROBLOX in 2005 was a different game, based around minigames with win and lose conditions rather than a 3D building game. Since this build of the client is presumed lost despite having around 100 users, we have to recreate it. We are using era-appropriate tools for this as well (Visual Studio 2005 and 2005-era compilers), as well as G3D 6.10, the era-appropriate version of the Graphics3D graphics library used by ROBLOX to this day.
|
ROBLOX in 2005 was a different game, based around minigames with win and lose conditions rather than a 3D building game. Since this build of the client is presumed lost despite having around 100 users, we have to recreate it. We are using era-appropriate tools for this as well (Visual Studio 2005 and 2005-era compilers), as well as G3D 6.10, the era-appropriate version of the Graphics3D graphics library used by ROBLOX to this day.
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
#include "DataModelV2/BaseButtonInstance.h"
|
#include "BaseButtonInstance.h"
|
||||||
#include "Listener/RotateButtonListener.h"
|
#include "RotateButtonListener.h"
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "AudioPlayer.h"
|
#include "AudioPlayer.h"
|
||||||
|
|
||||||
void RotateButtonListener::onButton1MouseClick(BaseButtonInstance* button)
|
void RotateButtonListener::onButton1MouseClick(BaseButtonInstance* button)
|
||||||
{
|
{
|
||||||
if(g_dataModel->getSelectionService()->getSelection().size() > 0)
|
if(g_selectedInstances.size() > 0)
|
||||||
{
|
{
|
||||||
Instance* selectedInstance = g_dataModel->getSelectionService()->getSelection()[0];
|
Instance* selectedInstance = g_selectedInstances.at(0);
|
||||||
AudioPlayer::playSound(clickSound);
|
AudioPlayer::playSound(clickSound);
|
||||||
if(PartInstance* part = dynamic_cast<PartInstance*>(selectedInstance))
|
if(PartInstance* part = dynamic_cast<PartInstance*>(selectedInstance))
|
||||||
{
|
{
|
||||||
9
ShapeRenderer.cpp
Normal file
9
ShapeRenderer.cpp
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
#include "ShapeRenderer.h"
|
||||||
|
|
||||||
|
ShapeRenderer::ShapeRenderer(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
ShapeRenderer::~ShapeRenderer(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include "ErrorFunctions.h"
|
#include "ErrorFunctions.h"
|
||||||
#include "StringFunctions.h"
|
#include "StringFunctions.h"
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
std::string Convert (float number)
|
std::string Convert (float number)
|
||||||
{
|
{
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
#include "DataModelV2/TextButtonInstance.h"
|
#include "TextButtonInstance.h"
|
||||||
#include "DataModelV2/BaseGuiInstance.h"
|
|
||||||
|
|
||||||
TextButtonInstance::TextButtonInstance(void)
|
TextButtonInstance::TextButtonInstance(void)
|
||||||
{
|
{
|
||||||
@@ -11,7 +11,7 @@ TextButtonInstance::TextButtonInstance(void)
|
|||||||
title = "TextBox";
|
title = "TextBox";
|
||||||
textColor = Color4(1, 1, 1, 1);
|
textColor = Color4(1, 1, 1, 1);
|
||||||
textOutlineColor = Color4(0, 0, 0, 0);
|
textOutlineColor = Color4(0, 0, 0, 0);
|
||||||
boxColor = BaseGuiInstance::translucentBackdrop();
|
boxColor = Color4(0.6F,0.6F,0.6F,0.4F);
|
||||||
boxOutlineColor = Color4(0, 0, 0, 0);
|
boxOutlineColor = Color4(0, 0, 0, 0);
|
||||||
setAllColorsSame();
|
setAllColorsSame();
|
||||||
textSize = 12;
|
textSize = 12;
|
||||||
@@ -98,7 +98,12 @@ void TextButtonInstance::drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseD
|
|||||||
Draw::box(Box(point1, point2), rd, boxColorDn, boxOutlineColorDn);
|
Draw::box(Box(point1, point2), rd, boxColorDn, boxOutlineColorDn);
|
||||||
font->draw2D(rd, title, RelativeTo, textSize, textColorDn, textOutlineColorDn);
|
font->draw2D(rd, title, RelativeTo, textSize, textColorDn, textOutlineColorDn);
|
||||||
}
|
}
|
||||||
else if(selected || mouseInArea(point1.x, point1.y, point2.x, point2.y, mousePos.x, mousePos.y))
|
else if(mouseInArea(point1.x, point1.y, point2.x, point2.y, mousePos.x, mousePos.y))
|
||||||
|
{
|
||||||
|
Draw::box(Box(point1, point2), rd, boxColorOvr, boxOutlineColorOvr);
|
||||||
|
font->draw2D(rd, title, RelativeTo, textSize, textColorOvr, textOutlineColorOvr);
|
||||||
|
}
|
||||||
|
else if(selected)
|
||||||
{
|
{
|
||||||
Draw::box(Box(point1, point2), rd, boxColorOvr, boxOutlineColorOvr);
|
Draw::box(Box(point1, point2), rd, boxColorOvr, boxOutlineColorOvr);
|
||||||
font->draw2D(rd, title, RelativeTo, textSize, textColorOvr, textOutlineColorOvr);
|
font->draw2D(rd, title, RelativeTo, textSize, textColorOvr, textOutlineColorOvr);
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user