boerse.c-Dateireferenz

#include <properties.h>
#include <language.h>
#include <defines.h>
#include <moving.h>
Include-Abhängigkeitsdiagramm für boerse.c:

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define GELDBOERSE   "\ngeldboerse2"
#define U_REQ   "u_req"

Funktionen

void create ()
static string _query_keep_on_sell ()
static int _query_amount ()
void AddAmount (int am)
string short ()
varargs int PreventInsert (object ob)
static int put_thing (string str)
varargs int id (string str, int lvl)
int IsEqual (object ob)
varargs int move (mixed dest, int method)

Variablen

inherit std container

Makro-Dokumentation

#define GELDBOERSE   "\ngeldboerse2"

Definiert in Zeile 3 der Datei boerse.c.

Wird benutzt von id(), IsEqual(), move(), PreventInsert() und put_thing().

#define U_REQ   "u_req"

Dokumentation der Funktionen

static int _query_amount (  )  [static]

Definiert in Zeile 34 der Datei boerse.c.

Benutzt ob() und P_AMOUNT.

00035 {
00036   object ob;
00037   if (ob=present("geld", this_object()))
00038     return ob->QueryProp(P_AMOUNT);
00039 }

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

static string _query_keep_on_sell (  )  [static]

Definiert in Zeile 27 der Datei boerse.c.

Benutzt P_KEEP_ON_SELL und Query().

00028 {
00029   if (sizeof(all_inventory()) && living(environment()))
00030      return getuid(environment());
00031   return Query(P_KEEP_ON_SELL);
00032 }

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

void AddAmount ( int  am  ) 

Definiert in Zeile 41 der Datei boerse.c.

Benutzt ob().

Wird benutzt von IsEqual().

00042 {
00043   object ob;
00044   if (ob=present("geld", this_object())) ob->AddAmount(am);
00045 }

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

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

void create (  ) 

Definiert in Zeile 11 der Datei boerse.c.

Benutzt AddCmd(), AddId(), create(), FEMALE, P_GENDER, P_LONG, P_MATERIAL, P_MAX_WEIGHT, P_NAME, P_SHORT, P_VALUE, P_WEIGHT, P_WEIGHT_PERCENT und SetProp().

00012 {
00013   ::create();
00014   SetProp(P_NAME, "Geldboerse");
00015   SetProp(P_SHORT, "Eine Geldboerse");
00016   SetProp(P_LONG,  "Eine schoene aus Leder gefertigte Geldboerse.\n");
00017   SetProp(P_MATERIAL, ([MAT_LEATHER:100]));
00018   SetProp(P_GENDER, FEMALE);
00019   SetProp(P_VALUE,  80);
00020   SetProp(P_WEIGHT, 300);
00021   SetProp(P_WEIGHT_PERCENT, 50);
00022   SetProp(P_MAX_WEIGHT, 250000); // 1 mio. Muenzen.
00023   AddId(({"geldboerse", "boerse", "\ngeldboerse"}));
00024   AddCmd(({"steck", "stecke", "leg", "lege"}), "put_thing");
00025 }

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

varargs int id ( string  str,
int  lvl 
)

Definiert in Zeile 85 der Datei boerse.c.

Benutzt GELDBOERSE und id().

00086 {
00087   if (str==GELDBOERSE && sizeof(all_inventory())) return 1;
00088   return (int)::id(str, lvl);
00089 }

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

public int IsEqual ( object  ob  ) 

Definiert in Zeile 91 der Datei boerse.c.

Benutzt AddAmount(), GELDBOERSE, ME, P_AMOUNT, P_LAST_CONTENT_CHANGE, QueryProp(), SetProp() und U_REQ.

00092 {
00093   int amount;
00094   object ob2;
00095 
00096   if (object_name(ob)[0..9]!="/obj/money" || environment(ob)==ME) return 0;
00097   if (!sizeof(all_inventory()) && (ob2=present(GELDBOERSE, environment())))
00098     return 0;
00099   if ( 0 > amount=ob->Query(U_REQ)) {
00100     int amount2;
00101     amount2=QueryProp(P_AMOUNT);
00102     if (-amount>amount2) {
00103       ob->AddAmount(amount2);
00104       AddAmount(-amount2);
00105     }
00106     else {
00107       ob->AddAmount(-amount);
00108       AddAmount(amount);
00109     }
00110     ob2=ME;
00111     SetProp(P_LAST_CONTENT_CHANGE,time());
00112     while (ob2=environment(ob2))
00113        ob2->SetProp(P_LAST_CONTENT_CHANGE,time());
00114   }
00115   /* Falls gewuenscht, kann man das jederzeit so einbauen...
00116   else if (amount && query_verb() && query_verb()[0..6]=="verkauf") {
00117     ob->AddAmount(-amount);
00118     AddAmount(amount);
00119     ob2=this_object();
00120     Set(P_LAST_CONTENT_CHANGE,time());
00121     while (ob2=environment(ob2))
00122        ob2->Set(P_LAST_CONTENT_CHANGE,time());
00123   }
00124   */
00125 }

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

int move ( mixed  dest,
int  method 
)

Definiert in Zeile 127 der Datei boerse.c.

Benutzt GELDBOERSE, i, M_MOVE_ALL und ob().

Wird benutzt von _transfer(), check_for_environment(), create(), do_mail(), gehen(), goto(), heart_beat(), init(), mnpc_reset(), move(), raus(), reise(), remove(), seer_sequenz1(), seer_sequenz2(), seer_sequenz3(), shut(), update_tool(), walk_random(), wandern() und Xtool().

00128 {
00129   int i;
00130   object ob;
00131 
00132   if (stringp(dest)) {
00133     call_other(dest, "???");
00134     dest=find_object(dest);
00135   }
00136   if (objectp(dest)) ob=present(GELDBOERSE, dest);
00137   i=(int)::move(dest, method);
00138   if (i!=1) return i;
00139   if (!living(environment())) return 1;
00140   if (objectp(ob)) filter_objects(all_inventory(), "move", ob, M_MOVE_ALL);
00141   return 1;
00142 }

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

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

varargs int PreventInsert ( object  ob  ) 

Definiert in Zeile 57 der Datei boerse.c.

Benutzt GELDBOERSE.

Wird benutzt von fuelle().

00058 {
00059   object ob2;
00060   if (ob && object_name(ob)[0..9]=="/obj/money")
00061     if (!sizeof(all_inventory()) && living(environment()) &&
00062         (ob2=present(GELDBOERSE, environment()))) {
00063       write("Du kannst immer nur eine Geldboerse gleichzeitig benutzen.\n");
00064       return 1;
00065     }
00066     else return (int)::PreventInsert(ob);
00067   else return 1;
00068 }

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

static int put_thing ( string  str  )  [static]

Definiert in Zeile 70 der Datei boerse.c.

Benutzt GELDBOERSE.

00073 {
00074   string s1,s2;
00075 
00076   if (!str || sscanf(str, "%s in %s", s1, s2)!=2) return 0;
00077   if (!id(s2)) return 0;
00078   if (!sizeof(all_inventory()) && living(environment()) &&
00079        present(GELDBOERSE, environment())) {
00080     write("Du kannst immer nur eine Geldboerse gleichzeitig benutzen.\n");
00081     return 1;
00082   }
00083 }

public mixed short (  ) 

Definiert in Zeile 47 der Datei boerse.c.

Benutzt i, P_AMOUNT und QueryProp().

Wird benutzt von _query_short() und Xinventory().

00048 {
00049   int i;
00050   switch (i=QueryProp(P_AMOUNT)) {
00051     case 0:  return "Eine leere Geldboerse.\n";
00052     case 1:  return "Eine Geldboerse mit einer Muenze.\n";
00053     default: return "Eine Geldboerse mit "+i+" Muenzen.\n";
00054   }
00055 }

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

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:


Variablen-Dokumentation

inherit std container

Definiert in Zeile 1 der Datei boerse.c.

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