战神引擎玩家用元宝升级项链幸运脚本

战神引擎玩家通过元宝升级项链脚本,但战神引擎有一个BUG,就是升级以后的项链会自动绑定,无法交易,甚至无法修复,升级的越高,绑定的限制也就越多。是引擎自带的BUG,目前还没有完美的解决方法。这个问题在武器和衣服上面也会出现。但折中的解决方法就是控制升级的次数,不要超过3次,这样就不会出现绑死的情况。

战神引擎玩家用元宝升级项链幸运脚本

战神引擎玩家用元宝升级项链幸运脚本

战神引擎玩家用元宝升级项链幸运脚本

部分升级幸运脚本

program mir2;
{$I TaoZhuang.pas}
procedure _DoExit;
begin
  This_Npc.CloseDialog(This_Player);
end;
procedure _Exit;
begin
  This_Npc.CloseDialog(This_Player);
end;
var
ck_name : array[1..300 ]of string;
ck_value : array[1..300] of integer; 
procedure OnInitialize;
begin
ck_name[1] :='绿色项链';
ck_name[2] :='灵魂项链';
ck_name[3] :='恶魔铃铛';
ck_name[4] :='法神项链';
ck_name[5] :='天尊项链';
ck_name[6] :='圣战项链';
ck_name[7] :='白色虎齿项链';
ck_name[8] :='灯笼项链';
ck_name[9] :='记忆项链';
ck_name[10] :='圣战项链';
ck_name[11] :='雷霆项链';
ck_name[12] :='烈焰项链';
ck_name[13] :='光芒项链';
ck_name[14] :='圣魔项链';
ck_name[15] :='战神项链';
ck_name[16] :='真魂项链';
ck_value[1] :=888;
ck_value[2] :=888;
ck_value[3] :=888;
ck_value[4] :=888;
ck_value[5] :=888;
ck_value[6] :=888;
ck_value[7] :=888;
ck_value[8] :=888;
ck_value[9] :=888;
ck_value[10] :=888;
ck_value[11] :=888;
ck_value[12] :=888;
ck_value[13] :=888;
ck_value[14] :=888;
ck_value[15] :=888;
ck_value[16] :=888;
end; 
procedure _Checkup;
begin
  This_Npc.NpcDialog(This_Player,
  +'|<幸运最高为2点,不包括装备原有属性。/c=red>\'
  +'|<待升级装备属性越高,升级消耗的元宝也越多。/c=red>\'
  +'|<注意:每次升级请间隔5秒,如果多次点击没反应,请关掉NPC重新放入装备升级/c=red>\'
  +'|{cmd}<开始升级/@Checkup_1>        ^<关闭/@doexit>' 
  );
end; 
procedure _Checkup_1;
begin
   This_NPC.Click_CommitItem(This_Player,1,'待升级装备:'); 
end; 
procedure CommitItem(AType:word);
var
i,ck_num,ck_kind,ck_gold,ck_rand:integer;
ck_str,ck_red:string;
begin
     ck_gold := 0;  //初始化 
     ck_str := '';  //初始化
     ck_red := '';  //初始化
     for ck_kind := 1 to 300 do
     begin
       if ck_name[ck_kind] = This_Item.ItemName then 
       begin                             
         ck_num := This_Item.AddPa2; 
         ck_gold := ck_value[ck_kind];
          if (ck_num > 0) and (ck_num < 2) then begin for i:= 1 to ck_num do begin ck_gold := ck_gold + 1000; end; end; end; end; if (ck_num >= 2) then
     begin
       This_Player.NotifyClientCommitItem(0,'无法鉴定:你的'+This_Item.ItemName+'已激发出所有属性!');  	 
     end
     else	 
     if ck_num > 1 then
     begin
     This_Player.NotifyClientCommitItem(0,'无法鉴定:你的'+This_Item.ItemName+'已激发出所有属性!');  
     end 
	 else
     if ck_gold > 0 then
     begin ck_rand := random(100)                                                                                       
       if This_Player.YBNum>= ck_gold then
        case ck_num of 
        0 : 
        begin  
           if ck_rand < 100 then
            begin 
         This_Item.AddPa2 := This_Item.AddPa2 + 1;   //幸运+1
           This_Player.PsYBConsum(This_NPC,'xin',20153,ck_gold,1);  
         ck_str :='幸运+1';
         ck_red :='红字公告';
         This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升到了'+ck_str+'!');
         ServerSay('恭喜:'+This_Player.Name+'在幸运使者处把'+This_Item.ItemName+'的幸运提升到了'+ck_str+'!',3);
         This_NPC.NotifyClientUPdBagItem(This_Player,This_Item);
         This_NPC.Click_CommitItem(This_Player,1,'待升级装备:');
            end;
        end;
       1 : begin  
         if ck_rand < 100 then
         begin 
         This_Item.AddPa2 := This_Item.AddPa2 + 1;   //幸运+1
           This_Player.PsYBConsum(This_NPC,'xin',20153,ck_gold,1);  
         ck_str :='幸运+2';
         ck_red :='红字公告';
         This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升到了'+ck_str+'!');
         ServerSay('恭喜:'+This_Player.Name+'在幸运使者处把'+This_Item.ItemName+'的幸运提升到了'+ck_str+'!',3);
         This_NPC.NotifyClientUPdBagItem(This_Player,This_Item);
         This_NPC.Click_CommitItem(This_Player,1,'待升级装备:');
         end;
         end;
        2:begin  ck_rand := random(100);
         if ck_rand < 100 then
         begin 
         This_Item.AddPa2 := This_Item.AddPa2 + 1;   //幸运+1
         This_Player.PsYBConsum(This_NPC,'xin',20153,ck_gold,1);  
         ck_str :='幸运+3';
         ck_red :='红字公告';
         This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升到了'+ck_str+'!');
         ServerSay('恭喜:'+This_Player.Name+'在幸运使者处把'+This_Item.ItemName+'的幸运提升到了'+ck_str+'!',3);
         This_NPC.NotifyClientUPdBagItem(This_Player,This_Item);
         This_NPC.Click_CommitItem(This_Player,1,'待升级装备:');
            end;      
         end;
      end else
       begin
         This_Player.NotifyClientCommitItem(0,'无法鉴定:你的元宝不足,需要'+inttostr(ck_gold)+'元宝。!'); 
       end;
      end else 
     begin
        This_Player.NotifyClientCommitItem(0,'该物品不可升级,请投入可升级的装备!');   
     end;     
  end;
function xin(price, num: Integer):boolean; 
begin
   result := true; 
end;
分享到:
赞(0)