-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[11720] Implement spline movement subsystem
Spline movement controls movements of server-side controlled units (monster movement, taxi movement, etc). Proper implementation of effects such as charge, jump, cyclic movement will rely on it. However, need improve our states system before. Technical changes: 1. Added linear, catmullrom and bezier3 splines which based on client's algorthims. They can be reused for proper transport position interpolation. 2. Precission increased. There are no more position desync issues since client's position calculation formulas used. 3. Now possible to move by paths with multiple points, send whole path to client.
- Loading branch information
Showing
52 changed files
with
2,471 additions
and
1,203 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
326ba2c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome...
326ba2c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mamma mia... gigantic work..
326ba2c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
who's da man! SilverIce :)
326ba2c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oooo... My God! Great job!
326ba2c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is just amazing. Thank you.
326ba2c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Little something for VC9 compilation ...
diff --git a/src/game/ConfusedMovementGenerator.cpp b/src/game/ConfusedMovementGenerator.cpp
index 169d4fc..b447fbc 100644
--- a/src/game/ConfusedMovementGenerator.cpp
+++ b/src/game/ConfusedMovementGenerator.cpp
@@ -18,6 +18,7 @@
#include "ConfusedMovementGenerator.h"
#include "Creature.h"
+#include "Player.h"
#include "MapManager.h"
#include "Opcodes.h"
#include "movement/MoveSplineInit.h"
diff --git a/src/game/ConfusedMovementGenerator.h b/src/game/ConfusedMovementGenerator.h
index b62ca1a..08995fa 100644
--- a/src/game/ConfusedMovementGenerator.h
+++ b/src/game/ConfusedMovementGenerator.h
@@ -20,6 +20,7 @@
#define MANGOS_CONFUSEDMOVEMENTGENERATOR_H
#include "MovementGenerator.h"
+#include "Timer.h"
#define MAX_CONF_WAYPOINTS 24
diff --git a/src/game/PointMovementGenerator.h b/src/game/PointMovementGenerator.h
index 5a5c7fa..dd6e4bd 100644
--- a/src/game/PointMovementGenerator.h
+++ b/src/game/PointMovementGenerator.h
@@ -21,6 +21,8 @@
#include "MovementGenerator.h"
#include "FollowerReference.h"
+#include "Creature.h"
+#include "Timer.h"
template
class MANGOS_DLL_SPEC PointMovementGenerator
diff --git a/src/game/TargetedMovementGenerator.cpp b/src/game/TargetedMovementGenerator.cpp
index f6a0cd3..029fe94 100644
--- a/src/game/TargetedMovementGenerator.cpp
+++ b/src/game/TargetedMovementGenerator.cpp
@@ -20,13 +20,11 @@
#include "TargetedMovementGenerator.h"
#include "Errors.h"
#include "Creature.h"
+#include "Player.h"
#include "World.h"
#include "movement/MoveSplineInit.h"
#include "movement/MoveSpline.h"
-#define SMALL_ALPHA 0.05f
-#include
//-----------------------------------------------//
template<class T, typename D>
diff --git a/src/game/TargetedMovementGenerator.h b/src/game/TargetedMovementGenerator.h
index ff4d4ad..c38797f 100644
--- a/src/game/TargetedMovementGenerator.h
+++ b/src/game/TargetedMovementGenerator.h
@@ -21,6 +21,7 @@
#include "MovementGenerator.h"
#include "FollowerReference.h"
+struct ShortTimeTracker;
class MANGOS_DLL_SPEC TargetedMovementGeneratorBase
{
diff --git a/src/game/movement/packet_builder.cpp b/src/game/movement/packet_builder.cpp
index 022a59b..282500d 100644
--- a/src/game/movement/packet_builder.cpp
+++ b/src/game/movement/packet_builder.cpp
@@ -17,8 +17,6 @@
*/
#include "packet_builder.h"
-#include "MoveSpline.h"
-#include "WorldPacket.h"
namespace Movement
{
diff --git a/src/game/movement/packet_builder.h b/src/game/movement/packet_builder.h
index 48043d9..6377b80 100644
--- a/src/game/movement/packet_builder.h
+++ b/src/game/movement/packet_builder.h
@@ -19,8 +19,9 @@
#ifndef MANGOSSERVER_PACKET_BUILDER_H
#define MANGOSSERVER_PACKET_BUILDER_H
-class ByteBuffer;
-class WorldPacket;
+#include "MoveSpline.h"
+#include "WorldPacket.h"
+#include "ByteBuffer.h"
namespace Movement
{