orc.c-Dateireferenz

#include <properties.h>
#include <attributes.h>
#include <wizlevels.h>
#include <health.h>
#include <new_skills.h>
#include <language.h>
#include <combat.h>
#include <defines.h>
#include <defuel.h>
#include "/d/vland/morgoth/std/orc.h"
Include-Abhängigkeitsdiagramm für orc.c:

gehe zum Quellcode dieser Datei

Funktionen

int QueryFCnt ()
int SetFCnt (int fc)
int QueryFDeg ()
void create ()
string _query_race ()
string _query_real_race ()
string _query_racedescr ()
int QueryAllowSelect ()
string * _query_racestring ()
string _query_default_guild ()
mixed RaceDefault (string arg)
protected void heart_beat ()
void Attack (object enemy)
varargs int _examine (string str, int mode)

Variablen

inherit std player base
static int f_cnt
static int f_deg

Dokumentation der Funktionen

varargs int _examine ( string  str,
int  mode 
)

Definiert in Zeile 201 der Datei orc.c.

Benutzt _examine(), break_string() und f_cnt.

00201                                {
00202 
00203   if(++f_cnt > F_MAX) {
00204     tell_object(this_object(),break_string(NO_EXAMINE[random(sizeof(NO_EXAMINE))],78));
00205     return 1;
00206   }
00207   return ::_examine(str,mode);
00208 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

string _query_default_guild (  ) 

Definiert in Zeile 167 der Datei orc.c.

00167                       {
00168   return "urukhai";
00169 }

string _query_race (  ) 

Definiert in Zeile 129 der Datei orc.c.

00129               {
00130   return "Ork";
00131 }

string _query_racedescr (  ) 

Definiert in Zeile 139 der Datei orc.c.

Benutzt break_string() und BS_LEAVE_MY_LFS.

00139                    {
00140   return break_string("Ein Ork. Die brutale Macht des Boesen. Ein "
00141       "erbitterter Kaempfer, ohne Furcht vor dem Tod. So stellst Du "
00142       "Dir einen Ork vor.\nDiese Orks sehen vielleicht ausserlich so "
00143       "aus: Eine dicke und dunkle, lederartige Haut, die sicher "
00144       "einiges an Schlaegen abhaelt. Lange Eckzaehne, die sicher boese "
00145       "Wunden reissen koennen.\nDu spuerst, dass diese Orks hier ein "
00146       "wenig anders sind. Ihren Drang nach dem Blut ihrer Feinde scheinen "
00147       "sie recht gut unter Kontrolle zu haben, die meiste Zeit zumindest. "
00148       "Sie sind in der Lage, friedlich zwischen den anderen Rassen zu "
00149       "wandeln. Dennoch sind vor allem die Uruk-Hai Orks als Gegner nicht "
00150       "zu unterschaetzen, sollte es doch einmal zu einem Kampf kommen.",
00151       78,0,BS_LEAVE_MY_LFS);
00152 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

string* _query_racestring (  ) 

Definiert in Zeile 160 der Datei orc.c.

Benutzt P_GENDER und QueryProp().

00160                      {
00161   if (QueryProp(P_GENDER)==2)
00162     return ({"Orkin","Orkin","Orkin","Orkin"});
00163   return ({"Ork","Orkes","Ork","Ork"});
00164 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

string _query_real_race (  ) 

Definiert in Zeile 134 der Datei orc.c.

00134                    {
00135   return "Ork";
00136 }

void Attack ( object  enemy  ) 

Definiert in Zeile 194 der Datei orc.c.

Benutzt Attack() und f_cnt.

00194                      {
00195   if(f_cnt > 0)
00196     f_cnt--;
00197   return ::Attack(enemy);
00198 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

void create (  ) 

Definiert in Zeile 55 der Datei orc.c.

Benutzt A_CON, A_INT, A_STR, create(), DT_ACID, DT_BLUDGEON, DT_FIRE, DT_HOLY, DT_RIP, DT_UNHOLY, f_cnt, f_deg, F_MODE_AS, FOOD_DELAY, HEAL_DELAY, MT_ANGRIFF, MT_BEHERRSCHUNG, MT_ILLUSION, MT_VERWANDLUNG, P_ATTRIBUTES_OFFSETS, P_AVERAGE_SIZE, P_AVERAGE_WEIGHT, P_BODY, P_DEFUEL_AMOUNT_DRINK, P_DEFUEL_AMOUNT_FOOD, P_DEFUEL_LIMIT_DRINK, P_DEFUEL_LIMIT_FOOD, P_DEFUEL_TIME_DRINK, P_DEFUEL_TIME_FOOD, P_FOOD_DELAY, P_HANDS, P_MAGIC_RESISTANCE_OFFSET, P_MATERIAL_KNOWLEDGE, P_MAX_ALCOHOL, P_MAX_DRINK, P_MAX_FOOD, P_POISON_DELAY, P_RESISTANCE_STRENGTHS, P_SIZE, P_SKILL_ATTRIBUTE_OFFSETS, P_SP_DELAY, P_WEIGHT, POISON_DELAY, QueryProp(), SA_DAMAGE, SAVE, Set(), set_next_reset(), SetDefaultHome(), SetPrayRoom() und SetProp().

00055          {
00056   if (!clonep() || object_name(this_object()) == __FILE__[0..<3]) {
00057       set_next_reset(-1);    
00058       return;
00059   }
00060 
00061   mixed res;
00062 
00063   base::create();
00064 
00065   f_cnt=0;
00066   f_deg=F_DEG;
00067   
00068   SetDefaultHome("/d/vland/morgoth/room/city/rathalle");
00069   SetPrayRoom("/d/vland/morgoth/room/city/c0606");
00070   SetProp(P_ATTRIBUTES_OFFSETS,([A_STR:4,A_INT:-1,A_CON:3]));
00071   /* Kleine aeh grosse Muskelpakete */
00072   SetProp(P_SKILL_ATTRIBUTE_OFFSETS,([SA_DAMAGE:110]));
00073   SetProp(P_AVERAGE_SIZE,195);
00074   SetProp(P_AVERAGE_WEIGHT,125000); // ziemlich schwer, viele Muskeln
00075   SetProp(P_MATERIAL_KNOWLEDGE,([MATGROUP_DEAD:60,
00076                                  MATGROUP_BIO:40, 
00077                                  MATGROUP_ELEMENTAL: 20, 
00078                                  MAT_BLOOD:100]));
00079   SetProp(P_RESISTANCE_STRENGTHS,
00080                   ([ 
00081      DT_FIRE : -0.2,
00082      DT_HOLY :0.3,
00083      DT_UNHOLY : -0.2,
00084                    DT_ACID : 0.2 ]));
00085 
00086   SetProp(P_MAX_FOOD,110);
00087   SetProp(P_MAX_DRINK,110);
00088   SetProp(P_MAX_ALCOHOL,150);
00089   SetProp(P_DEFUEL_LIMIT_FOOD,50);
00090   SetProp(P_DEFUEL_LIMIT_DRINK,70);
00091   SetProp(P_DEFUEL_TIME_FOOD,300);
00092   SetProp(P_DEFUEL_TIME_DRINK,400);
00093   SetProp(P_DEFUEL_AMOUNT_FOOD,0.4);
00094   SetProp(P_DEFUEL_AMOUNT_DRINK,0.35);
00095 
00096   /* SP regenerieren sie nich ganz so schnell, dafuer sind sie
00097    * ein bischen schneller bei Gift und Futter */
00098   SetProp(P_SP_DELAY,HEAL_DELAY+1);
00099   SetProp(P_POISON_DELAY,POISON_DELAY-1);
00100   SetProp(P_FOOD_DELAY,FOOD_DELAY-1);
00101 
00102   SetProp(P_MAGIC_RESISTANCE_OFFSET,
00103           ([ MT_ANGRIFF : 500,
00104                    MT_ILLUSION : -250,
00105              MT_BEHERRSCHUNG : -250,
00106                    MT_VERWANDLUNG : 500 ]));
00107 
00108 
00109   if(!(res=QueryProp(P_HANDS)) || !pointerp(res) || (sizeof(res)<3))
00110     res=({" mit starken Haenden",35,({DT_BLUDGEON, DT_RIP}) });
00111   SetProp(P_HANDS,res);
00112   /* Orks haben dicke Haut */
00113   SetProp(P_BODY,25);
00114 
00115   /* Groesse wird nur einmal gesetzt */
00116   if(!QueryProp(P_SIZE)){
00117     SetProp(P_SIZE,180+random(31));
00118     Set(P_SIZE,SAVE,F_MODE_AS);
00119   }
00120 
00121   /* Dito Gewicht */
00122   if(!QueryProp(P_WEIGHT) || (QueryProp(P_WEIGHT) == 75000)){
00123     SetProp(P_WEIGHT,100000+random(25001)+random(25001));
00124     Set(P_WEIGHT,SAVE,F_MODE_AS);
00125   }
00126 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

protected void heart_beat (  ) 

Definiert in Zeile 184 der Datei orc.c.

Benutzt f_cnt, f_deg und heart_beat().

00184                             {
00185   ::heart_beat();
00186 
00187   if(f_cnt > 0 && !--f_deg) {
00188     f_cnt--;
00189     f_deg=F_DEG;
00190   }
00191 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

int QueryAllowSelect (  ) 

Definiert in Zeile 155 der Datei orc.c.

00155                    { 
00156   return 0; 
00157 }

int QueryFCnt (  ) 

Definiert in Zeile 38 der Datei orc.c.

Benutzt f_cnt.

00038             {
00039   return f_cnt;
00040 }

int QueryFDeg (  ) 

Definiert in Zeile 50 der Datei orc.c.

Benutzt f_deg.

00050             {
00051   return f_deg;
00052 }

mixed RaceDefault ( string  arg  ) 

Definiert in Zeile 172 der Datei orc.c.

Benutzt DT_BLUDGEON, DT_RIP, P_BODY, P_HANDS und RaceDefault().

00172                         {
00173   if (!arg)
00174     return 0;
00175   switch(arg) {
00176     case P_HANDS :
00177       return ({" mit starken Haenden",35,({DT_BLUDGEON,DT_RIP}) });
00178     case P_BODY :
00179       return 25;
00180   }
00181   return base::RaceDefault(arg);
00182 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

int SetFCnt ( int  fc  ) 

Definiert in Zeile 43 der Datei orc.c.

Benutzt f_cnt.

00043                 {
00044   if(fc > -1 && fc < F_MAX)
00045     f_cnt = fc;
00046   return f_cnt;
00047 }


Variablen-Dokumentation

inherit std player base

Definiert in Zeile 3 der Datei orc.c.

int f_cnt [static]

Definiert in Zeile 35 der Datei orc.c.

Wird benutzt von _examine(), Attack(), create(), heart_beat(), QueryFCnt() und SetFCnt().

int f_deg [static]

Definiert in Zeile 35 der Datei orc.c.

Wird benutzt von create(), heart_beat() und QueryFDeg().

Erzeugt am Thu Jun 3 14:43:17 2010 für MorgenGrauen Mudlib von  doxygen 1.6.3