end = 0;
buffer_zone_steps = 2;
- StepContainer = new DynamicMesh(this, GetSceneNode(), name + " Step Container", 0, true);
-
//move object
Move(CenterX, voffset, CenterZ);
//create step meshes
for (int i = 0; i < num_steps; i++)
{
- Step *mesh = new Step(this, "Step " + ToString(i + 1), StepContainer);
+ Step *mesh = new Step(this, "Step " + ToString(i + 1), 0, 100);
Steps.push_back(mesh);
}
Steps[i] = 0;
}
- if (StepContainer)
- delete StepContainer;
- StepContainer = 0;
-
//unregister from parent
if (sbs->FastDelete == false)
{
int GetRun() { return Run; }
private:
- DynamicMesh* StepContainer;
Sound *sound; //sound object
int Run; //-1 is reverse, 0 is stop, 1 is forward
bool is_enabled;
namespace SBS {
-Step::Step(Object* parent, const std::string &name, DynamicMesh* wrapper) : MeshObject(parent, name, wrapper)
+Step::Step(Object* parent, const std::string &name, DynamicMesh* wrapper, int max_render_distance) : MeshObject(parent, name, wrapper, "", max_render_distance)
{
vector = Ogre::Vector3::ZERO;
speed = 0;
class SBSIMPEXP Step : public MeshObject
{
public:
- Step(Object* parent, const std::string &name, DynamicMesh* wrapper);
+ Step(Object* parent, const std::string &name, DynamicMesh* wrapper, int max_render_distance = 0);
~Step() {}
void Move(const Ogre::Vector3 &vector, float speed = 1.0f);
void OnHit();