diff --git a/Bin/DLL/PLACEHOLDER b/Bin/DLL/PLACEHOLDER
deleted file mode 100644
index e69de29b..00000000
diff --git a/Code/GameLogic/GameLogic.vcxproj b/Code/GameLogic/GameLogic.vcxproj
index df8f429b..b00cd46f 100644
--- a/Code/GameLogic/GameLogic.vcxproj
+++ b/Code/GameLogic/GameLogic.vcxproj
@@ -66,24 +66,28 @@
- $(SolutionDir)..\External\Bin\DLL\$(ProjectName)\
+ $(SolutionDir)..\Bin\DLL\$(SolutionDir)..\Obj\$(ProjectName)\$(PlatformShortName)\$(Configuration)\$(ProjectName)_$(PlatformShortName)D
+ $(SolutionDir)..\Bin\DLL;$(LibraryPath)
- $(SolutionDir)..\External\Bin\DLL\$(ProjectName)\
+ $(SolutionDir)..\Bin\DLL\$(SolutionDir)..\Obj\$(ProjectName)\$(PlatformShortName)\$(Configuration)\$(ProjectName)_$(PlatformShortName)
+ $(SolutionDir)..\Bin\DLL;$(LibraryPath)
- $(SolutionDir)..\External\Bin\DLL\$(ProjectName)\
+ $(SolutionDir)..\Bin\DLL\$(SolutionDir)..\Obj\$(ProjectName)\$(PlatformShortName)\$(Configuration)\$(ProjectName)_$(PlatformShortName)D
+ $(SolutionDir)..\Bin\DLL;$(LibraryPath)
- $(SolutionDir)..\External\Bin\DLL\$(ProjectName)\
+ $(SolutionDir)..\Bin\DLL\$(SolutionDir)..\Obj\$(ProjectName)\$(PlatformShortName)\$(Configuration)\$(ProjectName)_$(PlatformShortName)
+ $(SolutionDir)..\Bin\DLL;$(LibraryPath)
@@ -95,6 +99,7 @@
true
+ GamePhysics_$(PlatformShortName)D.lib;%(AdditionalDependencies)
@@ -107,6 +112,7 @@
true
+ GamePhysics_$(PlatformShortName)D.lib;%(AdditionalDependencies)
@@ -123,6 +129,7 @@
truetruetrue
+ GamePhysics_$(PlatformShortName).lib;%(AdditionalDependencies)
@@ -139,6 +146,7 @@
truetruetrue
+ GamePhysics_$(PlatformShortName).lib;%(AdditionalDependencies)
diff --git a/Code/GameLogic/Player.cpp b/Code/GameLogic/Player.cpp
index 67cbf52e..131fb456 100644
--- a/Code/GameLogic/Player.cpp
+++ b/Code/GameLogic/Player.cpp
@@ -47,7 +47,7 @@ Player::Player(void)
life = 10;
UniquePointer rigidBody = API::Instance().CreateSimpleRigidBody();
- //ref = API::Instance().AddObject(rigidBody);
+ API::Instance().AddObject(rigidBody);
////ref = API::Instance().AddObject(API::Instance().CreateSimpleRigidBody());
//const ICustomBody* rB;
diff --git a/Code/Misc/Utilities-InlineImpl.h b/Code/Misc/Utilities-InlineImpl.h
index dc047153..c2bbd2a9 100644
--- a/Code/Misc/Utilities-InlineImpl.h
+++ b/Code/Misc/Utilities-InlineImpl.h
@@ -37,6 +37,14 @@ namespace Utility
this->ownedInstance = assignedInstance;
}
+ template
+ UniquePointer::UniquePointer( const UniquePointer &donor )
+ {
+ this->ownedInstance = donor.ownedInstance;
+ donor.ownedInstance = NULL;
+
+ }
+
template
UniquePointer::~UniquePointer()
{
@@ -110,6 +118,14 @@ namespace Utility
this->ownedArray = assignedArray;
}
+ template
+ UniqueArray::UniqueArray( const UniqueArray &donor )
+ {
+ this->ownedArray = donor.ownedArray;
+ donor.ownedArray = NULL;
+
+ }
+
template
UniqueArray::~UniqueArray()
{
diff --git a/Code/Misc/Utilities.h b/Code/Misc/Utilities.h
index a07143cf..6ece8155 100644
--- a/Code/Misc/Utilities.h
+++ b/Code/Misc/Utilities.h
@@ -27,18 +27,22 @@ namespace Utility
{
public:
//! Assigns assignedInstance ownership to this UniquePonter, old owned instance will be deleted.
- //! If NULL is assigned is equavalent with clearing all responsibilities from this UniquePointer.
+ //! If NULL is assigned is equivalent with clearing all responsibilities from this UniquePointer.
UniquePointer( Type *assignedInstance = NULL );
+ //! Transfers assignedInstance ownership from donor to this UniquePonter, old owned instance will be deleted.
+ //! If donor had nothing, is equivalent with clearing all responsibilities from this UniquePointer.
+ UniquePointer( const UniquePointer &donor );
+
//! Will auto delete assigned dynamic instance.
~UniquePointer();
//! Assigns assignedInstance ownership to this UniquePonter, old owned instance will be deleted.
- //! If NULL is assigned is equavalent with clearing all responsibilities from this UniquePointer.
+ //! If NULL is assigned is equivalent with clearing all responsibilities from this UniquePointer.
UniquePointer & operator = ( Type *assignedInstance );
//! Transfers assignedInstance ownership from donor to this UniquePonter, old owned instance will be deleted.
- //! If donor had nothing, is equavalent with clearing all responsibilities from this UniquePointer.
+ //! If donor had nothing, is equivalent with clearing all responsibilities from this UniquePointer.
UniquePointer & operator = ( const UniquePointer &donor );
//! Access the assigned dynamic instance. Will crash if nothing there
@@ -71,18 +75,22 @@ namespace Utility
{ //! Wrapper to safely transfer dynamic ownership/responsibility
public:
//! Assigns assignedInstance ownership to this UniquePonter, old owned array will be deleted.
- //! If NULL is assigned is equavalent with clearing all responsibilities from this UniqueArray.
+ //! If NULL is assigned is equivalent with clearing all responsibilities from this UniqueArray.
UniqueArray( Type assignedArray[] = NULL );
+ //! Transfers assignedInstance ownership from donor to this UniquePonter, old owned array will be deleted.
+ //! If donor had nothing, is equivalent with clearing all responsibilities from this UniqueArray.
+ UniqueArray( const UniqueArray &donor );
+
//! Will auto delete assigned dynamic array.
~UniqueArray();
//! Assigns assignedInstance ownership to this UniquePonter, old owned array will be deleted.
- //! If NULL is assigned is equavalent with clearing all responsibilities from this UniqueArray.
+ //! If NULL is assigned is equivalent with clearing all responsibilities from this UniqueArray.
UniqueArray & operator = ( Type assignedArray[] );
//! Transfers assignedInstance ownership from donor to this UniquePonter, old owned array will be deleted.
- //! If donor had nothing, is equavalent with clearing all responsibilities from this UniqueArray.
+ //! If donor had nothing, is equivalent with clearing all responsibilities from this UniqueArray.
UniqueArray & operator = ( const UniqueArray &donor );
//! Accesses the instance at index i of this UniqeArray's owned dynamic array.