EntityType.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #include "EntityType.h"
  2. #include "Entity.h"
  3. #include "Registries.h"
  4. EntityType::EntityType( int id )
  5. : id( id )
  6. {
  7. STATIC_REGISTRY( EntityType ).registerT( this, id );
  8. }
  9. void EntityType::loadSuperEntity( Entity* zEntity, Framework::StreamReader* zReader ) const
  10. {
  11. zEntity->loadInventory( zReader );
  12. zReader->lese( (char*)&zEntity->id, 4 );
  13. zReader->lese( (char*)&zEntity->maxHP, 4 );
  14. zReader->lese( (char*)&zEntity->currentHP, 4 );
  15. zReader->lese( (char*)&zEntity->stamina, 4 );
  16. zReader->lese( (char*)&zEntity->maxStamina, 4 );
  17. zReader->lese( (char*)&zEntity->hunger, 4 );
  18. zReader->lese( (char*)&zEntity->maxHunger, 4 );
  19. zReader->lese( (char*)&zEntity->thirst, 4 );
  20. zReader->lese( (char*)&zEntity->maxThirst, 4 );
  21. zReader->lese( (char*)&zEntity->speed.x, 4 );
  22. zReader->lese( (char*)&zEntity->speed.y, 4 );
  23. zReader->lese( (char*)&zEntity->speed.z, 4 );
  24. zReader->lese( (char*)&zEntity->faceDir.x, 4 );
  25. zReader->lese( (char*)&zEntity->faceDir.y, 4 );
  26. zReader->lese( (char*)&zEntity->currentDimensionId, 4 );
  27. zReader->lese( (char*)&zEntity->location.x, 4 );
  28. zReader->lese( (char*)&zEntity->location.y, 4 );
  29. zReader->lese( (char*)&zEntity->location.z, 4 );
  30. if( zEntity->target )
  31. delete zEntity->target;
  32. zEntity->target = ActionTarget::load( zReader );
  33. }
  34. void EntityType::createSuperEntity( Entity* zEntity ) const
  35. {}
  36. Entity* EntityType::loadEntity( Framework::StreamReader* zReader ) const
  37. {
  38. Entity* entity = createEntity();
  39. createSuperEntity( entity );
  40. loadSuperEntity( entity, zReader );
  41. return entity;
  42. }
  43. void EntityType::updateEntity( Entity* e, Framework::StreamReader* zReader ) const
  44. {
  45. loadSuperEntity( e, zReader );
  46. }
  47. int EntityType::getId() const
  48. {
  49. return id;
  50. }