Ejemplo n.º 1
0
void		Bullet::setSprite(ResourceManager &resource, std::string const &name)
{
	if (this->_sprite)
		delete this->_sprite;
	this->_sprite = resource.getSprite(name);
	if (this->_sprite)
		this->_sprite->setRotation(rtod(atan2(_vy, _vx)));
}
Ejemplo n.º 2
0
AnimatedSprite *AnimatedSprite::load(const std::string &filename, int variant)
{
    ResourceManager *resman = ResourceManager::getInstance();
    SpriteDef *s = resman->getSprite(filename, variant);
    if (!s)
        return NULL;
    AnimatedSprite *as = new AnimatedSprite(s);
    s->decRef();
    return as;
}
Ejemplo n.º 3
0
Bullet::Bullet(ResourceManager &resource, std::string const & sprite, HitBox &box,
	       double vx, double vy, double xHitboxOffset, double yHitboxOffset)
	: PhysicObject(box, vx, vy, xHitboxOffset, yHitboxOffset), _sprite(0), _parent(0), _bulletId(0),
	  _life(1), _damage(1)
{
  try
  {
	this->_sprite = resource.getSprite(sprite);
	if (this->_sprite)
		this->_sprite->setRotation(rtod(atan2(vy, vx)));
  }
  catch (...)
  {
	std::cerr << "Sprite \"" << sprite  << "\" not found" << std::endl;
  }
}