战神引擎自己写的银行
2023-2-24

 

理论变量可以取值21亿

 

{********************************************************************

*******************************************************************}


PROGRAM Mir2;
var today ,num1,you,num,lixi: integer;


procedure _DoExit;  
begin  
  This_Npc.CloseDialog(This_Player);  
end;  



procedure Execute;

begin
if (This_NPC.CheckMapMonByName('5' , '魔王') < 1)and (GetHour() = 20) and (GetMin() >= 30) and (GetMin() <= 31) then

begin
This_npc.CreateMon('5',457,457,700,'魔王',1);
This_Npc.NpcNotice('魔王:哈哈哈我来了,你们来打我呀打我呀,我在苍月岛等你们来哈哈');
This_Npc.NpcNotice('魔王:哈哈哈我来了,你们来打我呀打我呀,我在苍月岛等你们来哈哈');

 ENd;
 
 if This_NPC.CheckMapMonByName('5' , '魔王') >= 1 then
 begin
This_Npc.NpcNotice('魔王:哈哈哈我来了,你们来打我呀打我呀');
 end;

end;


procedure _cunqian;

begin

        This_NPC.InputDialog(This_Player,'请输入你要买的数额',0,111) ;
 end;


procedure p111;

begin
   num1 :=  StrToIntDef(This_NPC.InputStr,-1);//输入非阿拉伯数字的字符都返回-1
   if This_NPC.InputOK  then             
    begin
	 if  This_Player.GoldNum >= num1 then 
	 begin
        if (num1 < 100) or  (num1 > 50000000)  then 
       begin 
       This_NPC.NpcDialog(This_Player,'投注必须使用大于100小于65534的阿拉伯数字!') ;
       end 
        else if (num1 >=100 ) and (num1 < 50000000) then
         begin
           if  This_Player.GoldNum >= num1 then 
           begin
                This_Player.DecGold(num1);
				This_Player.setV(105,18,This_Player.GetV(105,18)+num1);	
				This_Player.PlayerNotice('你yi存入了'+inttostr(num1)+'金碧',2);
				This_Npc.NpcNotice('恭喜' + This_Player.Name +'存入银行'+inttostr(num1)+'金币!!!');
				
           end else
           This_NPC.NpcDialog(This_Player,'你钱不够'+inttostr(num1)+'村补了这么多金碧!' +'{cmd}<返回/@main>') ;
         end;
		  
    end else
           This_NPC.NpcDialog(This_Player,'你钱不够'+inttostr(num1)+'村补了这么多金碧!' +'{cmd}<返回/@main>') ;
 end;

 end;
 
procedure _qu;

begin

        This_NPC.InputDialog(This_Player,'请输入你要买的数额',0,222) ;
		
 end;


procedure p222;

begin
   num1 :=  StrToIntDef(This_NPC.InputStr,-1);//输入非阿拉伯数字的字符都返回-1
   you:=This_Player.GetV(105,18);
   num:=50000000-This_Player.GoldNum ;
   lixi:=num1*2/100;
   if This_NPC.InputOK  then             
    begin
	if num1 < num then 
	begin
	
        if (num1 < 100) or  (num1 > 50000000)  then 
       begin 
       This_NPC.NpcDialog(This_Player,'投注必须使用大于100小于65534的阿拉伯数字!') ;
       end 
        else if (num1 >= 100) and (num1 < 50000000) then
		begin	
		if you >= num1 then
         begin
                This_Player.AddGold(num1-lixi);
				This_Player.setV(105,18,This_Player.GetV(105,18)-num1);	
				This_Player.PlayerNotice('你yi取出了'+inttostr(num1)+'金碧',2);
				This_Npc.NpcNotice('恭喜' + This_Player.Name +'冲银行取出了'+inttostr(num1)+'金币!!!');
				
			 end else
           This_NPC.NpcDialog(This_Player,'没有'+inttostr(num1)+'金币这么多点存款!' +'{cmd}<返回/@main>') ;
         end;
		 
    end else
           This_NPC.NpcDialog(This_Player,'你装不下去了!' +'{cmd}<返回/@main>') ;
 end;

 end;


procedure _jinqu;

begin
  if (This_Player.GetV(105,18) >= 50000000 ) and (This_Player.FreeBagNum >= 2) then
  begin
   This_Player.setV(105,18,This_Player.GetV(105,18)-50000000);	
    This_Player.Give('代金卷',1);
	This_Player.PlayerNotice('你兑换成功获取代金卷',2);
	This_Npc.NpcNotice('恭喜' + This_Player.Name +'换取代金卷!!!');
  end else
             This_NPC.NpcDialog(This_Player,'你银行头金币不足哦!还有背包至少2个空格' +'{cmd}<返回/@main>') ;
			
 end;


procedure _jincun;

begin
  if This_Player.GetBagItemCount ('代金卷') >= 1 then
  begin
   This_Player.setV(105,18,This_Player.GetV(105,18)+50000000);	
    This_Player.Take('代金卷',1);
	This_Player.PlayerNotice('你yi存入了50000000金碧',2);
	This_Npc.NpcNotice('恭喜' + This_Player.Name +'存入代金卷!!!');
  end else
             This_NPC.NpcDialog(This_Player,'你都没有代金卷' +'{cmd}<返回/@main>') ;
			 
 end;
 
procedure _daijin;

begin
  This_Npc.NpcDialog(This_Player,
   '代金卷5000w一张,取出直接从银行扣\ \'+
   '|代金卷5000w一张,存入直接存入银行\ \'+
  '|{cmd}<取出代金卷/@jinqu> \'+    
  '|{cmd}<存入代金卷/@jincun>  \'+
     
      
   '|{cmd}<关闭/@doexit>');
 end;
 
 
 
 
 procedure _jinqu1;

begin
  if (This_Player.GetV(105,18) >= 5000000 ) and (This_Player.FreeBagNum >= 2) then
  begin
   This_Player.setV(105,18,This_Player.GetV(105,18)-5000000);	
    This_Player.Give('金砖',1);
	This_Player.PlayerNotice('你兑换成功获取金砖',2);
	This_Npc.NpcNotice('恭喜' + This_Player.Name +'换取金砖!!!');
  end else
             This_NPC.NpcDialog(This_Player,'你银行头金币不足哦!还有背包至少2个空格' +'{cmd}<返回/@main>') ;
			
 end;


procedure _jincun1;

begin
  if This_Player.GetBagItemCount ('金砖') >= 1 then
  begin
   This_Player.setV(105,18,This_Player.GetV(105,18)+5000000);	
    This_Player.Take('金砖',1);
	This_Player.PlayerNotice('你yi存入了5000000金碧',2);
	This_Npc.NpcNotice('恭喜' + This_Player.Name +'存入代金砖!!!');
  end else
             This_NPC.NpcDialog(This_Player,'你都没有代金砖' +'{cmd}<返回/@main>') ;
			 
 end;
 
 
 
 
 
procedure _jinzhuan;

begin
  This_Npc.NpcDialog(This_Player,
   '代金卷500w一张,取出直接从银行扣\ \'+
   '|代金卷500w一张,存入直接存入银行\ \'+
  '|{cmd}<取出金砖/@jinqu1> \'+    
  '|{cmd}<存入金砖/@jincun1>  \'+          
   '|{cmd}<关闭/@doexit>');
 end;


 procedure _jinqu2;

begin
  if (This_Player.GetV(105,18) >= 10000000 ) and (This_Player.FreeBagNum >= 2) then
  begin
   This_Player.setV(105,18,This_Player.GetV(105,18)-10000000);	
    This_Player.Give('金盒',1);
	This_Player.PlayerNotice('你兑换成功获取金盒',2);
	This_Npc.NpcNotice('恭喜' + This_Player.Name +'换取金盒!!!');
  end else
             This_NPC.NpcDialog(This_Player,'你银行头金币不足哦!还有背包至少2个空格' +'{cmd}<返回/@main>') ;
			
 end;


procedure _jincun2;

begin
  if This_Player.GetBagItemCount ('金盒') >= 1 then
  begin
   This_Player.setV(105,18,This_Player.GetV(105,18)+10000000);	
    This_Player.Take('金盒',1);
	This_Player.PlayerNotice('你yi存入了5000000金碧',2);
	This_Npc.NpcNotice('恭喜' + This_Player.Name +'存入代金盒!!!');
  end else
             This_NPC.NpcDialog(This_Player,'你都没有代金盒' +'{cmd}<返回/@main>') ;
			 
 end;
 
 
 
 
 
procedure _jinzhuan1;

begin
  This_Npc.NpcDialog(This_Player,
   '代金卷1000w一张,取出直接从银行扣\ \'+
   '|代金卷1000w一张,存入直接存入银行\ \'+
   '|{cmd}<取出金盒/@jinqu2> \'+    
   '|{cmd}<存入金盒/@jincun2>  \'+   
   '|{cmd}<关闭/@doexit>');
 end;



procedure _lingqqq;

begin
  
    This_Player.Give('GM宝典',1);

 end;


procedure domain;
begin

   This_Npc.NpcDialog(This_Player,
   '收取%0.02手续费!\ \'+
      '|你存款有{<'+inttostr(This_Player.GetV(105,18))+'/fcolor=249>}金币\ \'+
  '|{cmd}<存入金币/@cunqian> ^ <取出金币/@qu>  \'+    
  '|{cmd}<银行取代金卷/@daijin> ^ <银行取代金砖/@jinzhuan>  \'+
  '|{cmd}<银行取代金盒/@jinzhuan1>  \'+
           
   '|{cmd}<关闭/@doexit>'); 

end;


Begin

if This_Player.GetV(105,20) < 1 then
 begin
  This_Player.setV(105,20,1);
  This_Player.setV(105,18,0);
 end;

domain;

end.

 

最后于 2023-7-23 被夜编辑 ,原因:
最新回复 (0)
返回