예제 #1
0
sanguis::messages::server::unique_ptr
sanguis::server::entities::projectiles::aoe_projectile::add_message(
	sanguis::server::player_id const,
	sanguis::collision::world::created const _created
) const
{
	return
		sanguis::messages::server::create_ptr(
			alda::message::init_record<
				sanguis::messages::server::add_aoe_projectile
			>(
				sanguis::messages::roles::entity_id{} =
					this->id(),
				sanguis::messages::roles::center{} =
					this->center().get(),
				sanguis::messages::roles::angle{} =
					this->angle().get(),
				sanguis::messages::roles::created{} =
					_created.get(),
				sanguis::messages::roles::speed{} =
					this->speed().get(),
				sanguis::messages::roles::aoe{} =
					aoe_.get(),
				sanguis::messages::roles::aoe_projectile_type{} =
					type_
			)
		);
}
예제 #2
0
sanguis::messages::server::unique_ptr
sanguis::server::entities::enemies::enemy::add_message(
	sanguis::server::player_id const,
	sanguis::collision::world::created const _created
) const
{
	return
		sanguis::messages::server::create_ptr(
			alda::message::init_record<
				sanguis::messages::server::add_enemy
			>(
				sanguis::messages::roles::entity_id{} =
					this->id(),
				sanguis::messages::roles::center{} =
					this->center().get(),
				sanguis::messages::roles::angle{} =
					this->angle().get(),
				sanguis::messages::roles::created{} =
					_created.get(),
				sanguis::messages::roles::speed{} =
					this->speed().get(),
				sanguis::messages::roles::health{} =
					this->current_health().get(),
				sanguis::messages::roles::max_health{} =
					this->max_health().get(),
				sanguis::messages::roles::primary_weapon{} =
					this->primary_weapon_type(),
				sanguis::messages::roles::weapon_status{} =
					this->weapon_status(),
				sanguis::messages::roles::aura_type_container{} =
					this->aura_types(),
				sanguis::messages::roles::buff_type_container{} =
					this->buff_types(),
				sanguis::messages::roles::enemy_type{} =
					this->enemy_type(),
				sanguis::messages::roles::enemy_kind{} =
					this->enemy_kind(),
				sanguis::messages::roles::name{} =
					this->name()
			)
		);
}
예제 #3
0
sanguis::messages::server::unique_ptr
sanguis::server::entities::doodad::add_message(
	sanguis::server::player_id,
	sanguis::collision::world::created const _created
) const
{
	return
		sanguis::messages::server::create_ptr(
			alda::message::init_record<
				sanguis::messages::server::add_doodad
			>(
				sanguis::messages::roles::entity_id{} =
					this->id(),
				sanguis::messages::roles::center{} =
					this->center().get(),
				sanguis::messages::roles::angle{} =
					0.f, // TODO: Should center_ghost save the angle?
				sanguis::messages::roles::created{} =
					_created.get(),
				sanguis::messages::roles::doodad_type{} =
					doodad_type_
			)
		);
}