blob: 818dd81749402d901042322992bd77f62f933415 [file] [log] [blame]
inherit "/std/npc";
#include <new_skills.h>
#include __PATH__(1)"defs.h"
protected void create() {
if (!clonep()) {
set_next_reset(-1);
return;
}
::create();
create_default_npc(20, 600);
SetProp(P_SHORT, "Ein angriffslustiger Zwerg");
SetProp(P_LONG, BSLF(
"Diesmal hat Kawumm eine spezielle Axt, und er greift ab und zu staerker "
"an."));
SetProp(P_NAME, "Kawumm");
SetProp(P_ARTICLE, 0);
SetProp(P_GENDER, MALE);
AddId(({"zwerg", "kawumm"}));
SetProp(P_ALIGN, 100);
SetProp(P_RACE, "Zwerg");
SetProp(P_SIZE, 102);
SetProp(P_MURDER_MSG,
"He! Ich gehoere doch zu Notstroms Magiertutorial, %s.");
/* Wir setzen hier auch mal eine Kill-Message, dieser Zwerg koennte ja
sogar mal wen erwischen: */
SetProp(P_KILL_MSG,
"Kommt davon, wenn man sich an einem Magiertutorial vergreift, %s!");
SetProp(P_DIE_MSG, " kippt um wie eine leere Bierflasche.\n");
AddItem(__PATH__(1)"obj/axt2", REFRESH_NONE|CLONE_WIELD);
}
private void festedruff() {
// wichtig: auf Paralyse pruefen!
if (!objectp(TP) || (ENV(TP) != ENV()) || QueryProp(P_DISABLE_ATTACK))
return;
mixed waffe = QueryProp(P_WEAPON);
string* damtype = ({DT_BLUDGEON});
if (waffe) damtype = waffe->QueryProp(P_DAM_TYPE);
tell_room(ENV(), BSLF(
"Kawumm semmelt mal so richtig feste drauf. RRRRUMMMMS."));
enemy->Defend(1000, damtype, 0, TO);
}
/* Ab und zu (20% Chance) startet Kawumm eine starke Attacke, die braucht
dann aber ein paar Runden: */
void Attack(object enemy) {
if (!random(5) && find_call_out(#'festedruff) == -1 &&
!QueryProp(P_DISABLE_ATTACK)) {
tell_room(ENV(), BSLF(
"Kawumm holt richtig weit aus ..."));
call_out(#'festedruff, 3, TP);
return;
}
::Attack(enemy);
}