string BANKTOKEN_1MILL = "banktoken1000000"; string BANKTOKEN_250K = "banktoken250000"; string BANKTOKEN_100K = "banktoken100000"; string BANKTOKEN_10K = "banktoken10000"; string BANKTOKEN_1K = "banktoken1000"; string FormatMoneyString(string Money) { string sFormated = Money; int iLen = GetStringLength(Money); int iPos = 3; int iOff = 0; while (iPos<iLen) { sFormated = GetStringLeft(sFormated, GetStringLength(Money)-iPos) + "," + GetStringRight(sFormated, (iPos + iOff)); iOff++; iPos = iPos + 3; } return sFormated; } int TokenToGold(string Token) { int iGold = 0; if (Token == BANKTOKEN_1MILL) iGold = 1000000; else if (Token == BANKTOKEN_250K) iGold = 250000; else if (Token == BANKTOKEN_100K) iGold = 100000; else if (Token == BANKTOKEN_10K) iGold = 10000; else if (Token == BANKTOKEN_1K) iGold = 1000; else iGold = 0; return iGold; } int HasItemInInventory(string ItemResRef, object PC, int DestroyItem) { object oItem = GetFirstItemInInventory(PC); int iFound = FALSE; // check for normal items while (oItem != OBJECT_INVALID && iFound == FALSE) { if (GetResRef(oItem) == ItemResRef) { if (DestroyItem == TRUE) { DestroyObject(oItem, 0.0f); } iFound = TRUE; } else { oItem = GetNextItemInInventory(PC); } } return iFound; } void ExchangeAllGoldForTokens(object PC) { while (GetGold(PC)>= 1000000) { TakeGoldFromCreature(1000000, PC); CreateItemOnObject(BANKTOKEN_1MILL, PC); } while (GetGold(PC)>= 250000) { TakeGoldFromCreature(250000, PC); CreateItemOnObject(BANKTOKEN_250K, PC); } while (GetGold(PC)>= 100000) { TakeGoldFromCreature(100000, PC); CreateItemOnObject(BANKTOKEN_100K, PC); } while (GetGold(PC)>= 10000) { TakeGoldFromCreature(10000, PC); CreateItemOnObject(BANKTOKEN_10K, PC); } while (GetGold(PC)>= 1000) { TakeGoldFromCreature(1000, PC); CreateItemOnObject(BANKTOKEN_1K, PC); } } void GetSingleToken(object oPC, string Token) { int iGold = TokenToGold(Token); if (iGold>0) { TakeGoldFromCreature(iGold, oPC); CreateItemOnObject(Token, oPC); } } void ExchangeTokenForGold(object PC, string Token) { int iGold = TokenToGold(Token); if (HasItemInInventory(Token, PC, TRUE)) { GiveGoldToCreature(PC, iGold); } } void ExampleSwitch() { /* int iTest = 3; switch (iTest) { case 1: ExchangeAllTokensForGold(OBJECT_INVALID); break; default: ExchangeAllTokensForGold(OBJECT_INVALID); break; } */ }