#include "AddEntityUpdate.h" #include "Dimension.h" #include "EntityType.h" #include "StaticRegistry.h" AddEntityUpdate::AddEntityUpdate( Entity* entity, int dimension ) : WorldUpdate( AddEntityUpdateType::ID, dimension, entity->getPosition(), entity->getPosition() ), entity( entity ) {} AddEntityUpdate::~AddEntityUpdate() { entity->release(); } void AddEntityUpdate::onUpdate( Dimension* zDimension ) { zDimension->addEntity( dynamic_cast(entity->getThis()) ); } void AddEntityUpdate::write( Framework::StreamWriter* zWriter ) { int id = entity->zType()->getId(); zWriter->schreibe( (char*)&id, 4 ); StaticRegistry::INSTANCE.zElement( id )->saveEntity( entity, zWriter ); } AddEntityUpdateType::AddEntityUpdateType() : WorldUpdateType( ID ) {}