X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=src%2Fcokebank_basic%2Fbank.c;h=0f07a17e7e89a4c24515b6ad770d8ebd476ec3b1;hb=5df82cb2854e4f7c693c8a31e0c2d56682a93855;hp=d78f90f6b542bdd17158431c9fd13d8827052cc8;hpb=229e4bcc0d38421e8baf266d2bf585ad3e88a327;p=tpg%2Fopendispense2.git diff --git a/src/cokebank_basic/bank.c b/src/cokebank_basic/bank.c index d78f90f..0f07a17 100644 --- a/src/cokebank_basic/bank.c +++ b/src/cokebank_basic/bank.c @@ -24,7 +24,7 @@ enum { }; // === PROTOTYPES === -static int GetUnixID(const char *Name); +static int GetUnixID(const char *Username); // === GLOBALS === tUser *gaBank_Users; @@ -32,13 +32,16 @@ tUser *gaBank_Users; FILE *gBank_File; // === CODE === -int Bank_GetUserByUnixID(int UnixID) +int Bank_GetUserByName(const char *Username) { - int i; + int i, uid; + + uid = GetUnixID(Username); + // Expensive search :( for( i = 0; i < giBank_NumUsers; i ++ ) { - if( gaBank_Users[i].UnixID == UnixID ) + if( gaBank_Users[i].UnixID == uid ) return i; } @@ -88,7 +91,7 @@ int Bank_SetUserBalance(int ID, int Value) int Bank_GetMinAllowedBalance(int ID) { if( ID < 0 || ID >= giBank_NumUsers ) - return -1; + return 0; switch( gaBank_Users[ID].Flags & FLAG_TYPEMASK ) { @@ -118,6 +121,10 @@ int Bank_AddUser(const char *Username) gaBank_Users[giBank_NumUsers].Balance = 0; gaBank_Users[giBank_NumUsers].Flags = 0; + if( strcmp(Username, ">liability") == 0 ) { + gaBank_Users[giBank_NumUsers].Flags = USER_TYPE_GOD; // No minium + } + // Commit to file fseek(gBank_File, giBank_NumUsers*sizeof(gaBank_Users[0]), SEEK_SET); fwrite(&gaBank_Users[giBank_NumUsers], sizeof(gaBank_Users[0]), 1, gBank_File);