Exemple #1
0
void mybrain_tentacle_attack (edict_t *self)
{
	int		damage;

	if (!self->activator->client)
		damage = 100 + 45*self->monsterinfo.level;
	else 
		damage = 100 + 35*self->monsterinfo.level;

	M_MeleeAttack(self, MELEE_DISTANCE, damage, 0);

	gi.sound (self, CHAN_WEAPON, sound_tentacles_retract, 1, ATTN_NORM, 0);
}
Exemple #2
0
void mybrain_hit_left (edict_t *self)
{
	int		damage;

	if (!self->enemy)
		return;
	if (!self->enemy->inuse)
		return;

	if (!self->activator->client)
		damage = 120 + 80*self->monsterinfo.level;
	else 
		damage = 120 + 80*self->monsterinfo.level;

	if (M_MeleeAttack(self, MELEE_DISTANCE, damage, 0))
		gi.sound (self, CHAN_WEAPON, sound_melee3, 1, ATTN_NORM, 0);
}
Exemple #3
0
void GaldiatorMelee (edict_t *self)
{
	int		damage = 60 + 20 * self->monsterinfo.level; // No one-shots, until later.
	vec3_t	aim;

	if (self->monsterinfo.bonus_flags & BF_UNIQUE_LIGHTNING)
	{
		GladiatorLightningStorm(self);
		return;
	}

	if (!G_EntExists(self->enemy))
		return;

	VectorSet (aim, MELEE_DISTANCE, self->mins[0], -4);
	if (M_MeleeAttack(self, 96, damage, 200))
		gi.sound (self, CHAN_AUTO, sound_cleaver_hit, 1, ATTN_NORM, 0);
	else
		gi.sound (self, CHAN_AUTO, sound_cleaver_miss, 1, ATTN_NORM, 0);
}