///////////////////////////////////////// ////// Script for Interactive /////////// ///////// Mini Bank System ////////////// /////// OnConversarion NPC Banker /////// //////// Date: 11.07.2004 /////////////// ///////// Created by Avaddon //////////// /////////////////////////////////////////
#include "nw_i0_tool" void main() { object oPC = GetLastSpeaker(); object oOffer = GetItemPossessedBy(oPC, "bank_offer"); // bank_offer - тэг договора. int iAmount = StringToInt (GetMatchedSubstring (0)); int iAccount = GetLocalInt(oOffer, "money"); string sBallance = IntToString(iAccount); string sBallancePlus = IntToString(iAccount+iAmount); string sBallanceMinus = IntToString(iAccount-iAmount); if(HasItem(oPC, "bank_offer")) { if (GetListenPatternNumber()==10 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"account")==1) { if (iAmount>0) { if (iAmount<=GetGold(oPC)) { SpeakString("Вы положили на счет "+GetMatchedSubstring(0)+"золотых монет."); TakeGoldFromCreature(iAmount,oPC,TRUE); SetLocalInt(oOffer,"money",iAccount+iAmount); SpeakString ("Ваш баланс на счете = "+sBallancePlus+" золотых монет."); DeleteLocalInt(oPC,"account"); SetListenPattern(OBJECT_SELF,"DELETED",10); } else { SpeakString("У вас нет столько золота"); } } else { SpeakString("Вы ввели неправильную величину"); } }
if (GetListenPatternNumber()==10 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"account")==2) { if (iAmount>0) {
if (iAmount<=GetLocalInt(oOffer,"money")) { SpeakString("Вы забрали зо счета "+GetMatchedSubstring(0)+" золотых монет."); GiveGoldToCreature(oPC,iAmount); SetLocalInt(oOffer,"money",iAccount-iAmount); SpeakString ("Ваш баланс на счете = "+sBallanceMinus+" золотых монет."); DeleteLocalInt(oPC,"account"); SetListenPattern(OBJECT_SELF,"DELETED",10); } else { SpeakString("На вашем счете нет столько золота"); } } else { SpeakString("вы ввели неправильную величину"); } }
if (GetListenPatternNumber()==1 && GetIsListening(OBJECT_SELF)) {
SpeakString ("Сколько денег вы хотите положить на счет?"); SetListenPattern(OBJECT_SELF,"**",10); SetLocalInt(oPC,"account",1);
} if (GetListenPatternNumber()==2 && GetIsListening(OBJECT_SELF)) { SetListenPattern(OBJECT_SELF,"DELETED",10); SpeakString ("Сколько денег вы хотите забрать?"); SetListenPattern(OBJECT_SELF,"**",10); SetLocalInt(oPC,"account",2); }
if (GetListenPatternNumber()==3 && GetIsListening(OBJECT_SELF)) { SpeakString ("Ваш баланс на счете = "+sBallance+" золотых монет."); } } else { if (GetListenPatternNumber()==1 && GetIsListening(OBJECT_SELF)) { SpeakString ("Хм, разве мы подписывали с вами договор? Хотите завести счет? Даю вам минуту на размышление. Просто скажите [да] или [нет]"); SetLocalInt(oPC,"new_account", TRUE); DelayCommand(60.0 , DeleteLocalInt(oPC,"new_account")); } if (GetListenPatternNumber()==2 && GetIsListening(OBJECT_SELF)) { SpeakString ("Хм, разве мы подписывали с вами договор? Хотите завести счет? Даю вам минуту на размышление. Просто скажите [да] или [нет]"); SetLocalInt(oPC,"new_account", TRUE); DelayCommand(60.0 , DeleteLocalInt(oPC,"new_account")); } if (GetListenPatternNumber()==3 && GetIsListening(OBJECT_SELF)) { SpeakString ("Хм, разве мы подписывали с вами договор? Хотите завести счет? Даю вам минуту на размышление. Просто скажите [да] или [нет]"); SetLocalInt(oPC,"new_account", TRUE); DelayCommand(60.0 , DeleteLocalInt(oPC,"new_account")); } if (GetListenPatternNumber()==4 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"new_account")== TRUE) { CreateItemOnObject("bank_offer", oPC, 1); SetLocalInt(oOffer, "money", 0); SpeakString("Большое спасибо, что воспользовались услугами нашего банка! Вот ваш договор!"); SetListenPattern(OBJECT_SELF,"DELETED",10); } if (GetListenPatternNumber()==5 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"new_account")== TRUE) { SpeakString ("Ну нет, так нет."); DeleteLocalInt(oPC,"new_account"); }
} } |