自己写的第二个版本的彩票压点(比较中意的版本)
2023-7-23

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

*******************************************************************}  
program mir2;  
var num1,mm,xx,zz,cun,ee,rr,cc: integer;
  
procedure _DoExit;  
begin  
  This_Npc.CloseDialog(This_Player);  
end;  
  
procedure _Exit;  
begin  
  This_Npc.CloseDialog(This_Player);  
end;  
  
  

procedure domain;  
begin 
         
    This_NPC.NpcDialog(This_Player,  

   '|规则:点数一共0-9点\'+
   '|一次提供三组数字\'+ 
   '|买中即可获得奖池%80+200w\'+
   '|10w买一注\ \'+
   '|买中后自动对入银行中~\ \'+
   '|档前奖池金额:<'+inttostr(getG(49,20))+'/fcolor=146> 金币\ \'+
   '|    一号:<'+inttostr(This_Player.getV(266,11))+'/fcolor=191>           二号:<'+inttostr(This_Player.getV(266,12))+'/fcolor=191>           三号:<'+inttostr(This_Player.getV(266,13))+'/fcolor=191>       \ \'+   
    +'|{cmd}<买一号/@duihaun1> ^ <买二号/@duihaun2>^ <买三号/@duihaun3>      \' +
	+'|{cmd}<点击开奖/@Execute1>  ^^<随机买号/@suiji> \' +
    +'|{cmd}<退出/@Exit>           \'
    
    );  
end;  

procedure _suiji;  
begin  
    mm:=random(10);
	xx:=random(10);
	zz:=random(10);
 if (This_Player.getV(266,11) < 0) or (This_Player.getV(266,11) < 0) or (This_Player.getV(266,11) < 0) then
 begin
   This_Player.setV(266,11,mm);
   This_Player.setV(266,12,xx);
   This_Player.setV(266,13,zz);
   This_Player.PlayerNotice('当前随机点号为-'+inttostr(mm) +'-'+inttostr(xx) +'-'+inttostr(zz) +'-',2);
   domain; 
   end else
    This_Player.PlayerNotice('一下住,请开剑',2);
  
end; 

 
procedure _duihaun1;  
begin  
	 if This_Player.getV(266,11) < 0 then
	 begin
    This_NPC.InputDialog(This_Player,'请输入0-9点数字',0,121) ;
	end else
	This_Player.PlayerNotice('买购买的是'+inttostr(This_Player.getV(266,11)) +'',2);
  
  
end;  

procedure _duihaun2;  
begin  
 	 if This_Player.getV(266,12) < 0 then
	 begin
    This_NPC.InputDialog(This_Player,'请输入0-9点数字',0,122) ;
	end else
	This_Player.PlayerNotice('买购买的是'+inttostr(This_Player.getV(266,12)) +'',2);
  
  
end;  

procedure _duihaun3;  
begin  

 	 if This_Player.getV(266,13) < 0 then
	 begin
    This_NPC.InputDialog(This_Player,'请输入0-9点数字',0,123) ;
	end else
	This_Player.PlayerNotice('买购买的是'+inttostr(This_Player.getV(266,13)) +'',2);
  
  
end;  

procedure p121;
begin
	
	num1 :=  StrToIntDef(This_NPC.InputStr,-1);
   if This_NPC.InputOK  then             
    begin
		if  This_Player.GoldNum >= 100000 then
		begin
		  if  (num1 < 10) and (num1 >= 0)  then 
			begin
              
			  This_Player.setV(266,11,num1);
			  
			 domain; 
			  
			  
			end   else
			This_NPC.NpcDialog(This_Player,'|请输入0 到9号\' +'|请重新输入!!\'+'\' +'|{cmd}<返回/@main>') ;
			_duihaun1;
				
			end else
				This_NPC.NpcDialog(This_Player,'你连50w 都没有吗?穷鬼\' +'{cmd}<返回/@main>') ;
			end;
 end;
 
 procedure p122;
begin
	
	num1 :=  StrToIntDef(This_NPC.InputStr,-1);
   if This_NPC.InputOK  then             
    begin
		if  This_Player.GoldNum >= 100000 then
		begin
		  if  (num1 < 10) and (num1 >= 0)  then 
			begin
              
			  This_Player.setV(266,12,num1);
			  
			  domain; 
			end
			   else
			This_NPC.NpcDialog(This_Player,'|请输入0 到9号\' +'|请重新输入!!\'+'\' +'|{cmd}<返回/@main>') ;
			_duihaun2;
			end else
				This_NPC.NpcDialog(This_Player,'你连50w 都没有吗?穷鬼\' +'{cmd}<重新输入/@duihaun3>') ;
			end;
 end;
 
 procedure p123;
begin
	
	num1 :=  StrToIntDef(This_NPC.InputStr,-1);
   if This_NPC.InputOK  then             
    begin
		if  This_Player.GoldNum >= 100000 then
		begin
		  if  (num1 < 10) and (num1 >= 0)  then 
			begin
              
			  This_Player.setV(266,13,num1);
			  
			  
			  domain; 
			end   else
			This_NPC.NpcDialog(This_Player,'|请输入0 到9号\' +'|请重新输入!!\'+'\' +'|{cmd}<返回/@main>') ;
			_duihaun3;
				
			end else
				This_NPC.NpcDialog(This_Player,'你连50w 都没有吗?穷鬼\' +'{cmd}<返回/@main>') ;
			end;
 end;





procedure kaijiang;

begin
    mm:=random(10);
	xx:=random(10);
	zz:=random(10);
	ee:= getg(49,20)*7/10 ;
	rr:= getg(49,20)*1/20 ;
	cc:= 1000000+rr;
	cun:= 10000000+ee;
	
	  
	if (mm = This_Player.getV(266,11))and(xx=This_Player.getV(266,12))and(zz=This_Player.getV(266,13)) then 
	  begin
	   This_Player.setV(266,13,-1);
	   This_Player.setV(266,11,-1);
	   This_Player.setV(266,12,-1);
	   SetG(49,20,getG(49,20) - ee );
	   This_Player.setV(105,18,This_Player.GetV(105,18)+cun);
	   This_Player.PlayerNotice('恭喜你已经中奖获得'+inttostr(cun) +',已经自动存入银行',2);
	   //ServerSay('当前摇出的菜票为-'+inttostr(mm) +'-'+inttostr(xx) +'-'+inttostr(zz) +'-',3);
	   ServerSay('恭喜:'+This_Player.Name+'中的菜票'+inttostr(mm) +'-'+inttostr(xx) +'-'+inttostr(zz) +'获得!'+inttostr(cun) +'金币',3);
	   domain; 
	end else
	
	if ((mm = This_Player.getV(266,11))and(xx=This_Player.getV(266,12)))or((zz=This_Player.getV(266,13) )and(mm = This_Player.getV(266,11))) or ((xx=This_Player.getV(266,12))and(zz=This_Player.getV(266,13)) )then 
	  begin
	   This_Player.setV(266,13,-1);
	   This_Player.setV(266,11,-1);
	   This_Player.setV(266,12,-1);
	   SetG(49,20,getG(49,20) - rr );
	   This_Player.setV(105,18,This_Player.GetV(105,18)+cc);
	   This_Player.PlayerNotice('恭喜你已经中奖菜票2个号获得'+inttostr(cc) +',已经自动存入银行',2);
	   //ServerSay('当前摇出的菜票为-'+inttostr(mm) +'-'+inttostr(xx) +'-'+inttostr(zz) +'-',3);
	   ServerSay('恭喜:'+This_Player.Name+'中的'+inttostr(mm) +'-'+inttostr(xx) +'-'+inttostr(zz) +'菜票2个号获得!'+inttostr(cc) +'金币',3);
	   domain; 
	end  else
	    begin
	   This_Player.PlayerNotice('很遗憾你没有中奖,',2);
	   This_Player.PlayerNotice('当前摇出的菜票为-'+inttostr(mm) +'-'+inttostr(xx) +'-'+inttostr(zz) +'-',2);
	    This_Player.setV(266,13,-1);
	   This_Player.setV(266,11,-1);
	   This_Player.setV(266,12,-1);
	   domain; 
	 end;	
  

end;


procedure _Execute1;
begin
  if  This_Player.GoldNum >= 100000 then
  begin
 	if ( This_Player.getV(266,11)>= 0  )and( This_Player.getV(266,12) >= 0)and(This_Player.getV(266,13) >= 0) then 
	begin
	This_Player.DecGold(100000);
	SetG(49,20,getG(49,20)+100000);
   kaijiang;
   end else
    This_NPC.NpcDialog(This_Player,'|请先下珠后再开奖!!\'+'\' +'|{cmd}<返回/@main>') ;
	end else
	This_NPC.NpcDialog(This_Player,'|金币狗吗!!\'+'\' +'|{cmd}<返回/@main>') ;
	
end;






begin  
	
 domain;  
end.  
最新回复 (0)
返回