UID 128969
帖子
精華
主題
積分 3967
現金
積極性
威望
違規
熱心
推廣次數
閱讀權限 20
註冊時間 2009-1-29
在線時間 小時
最後登錄 1970-1-1
TA的每日心情 怒 2021-5-15 11:39 PM
簽到天數: 161 天
連續簽到: 1 天
[LV.7]常住居民III
100 積分
我已經測試過好幾次了 還是無法成功
我想在這裡面 加入 防爆道具
我已經預設防爆道具了 只是 我看了 新版跟舊版的腳本
還是搞不出來
//以下設定為:防具 , 一級武器 , 二級武器 , 三級武器 , 四級武器 , { Type , Type2 }
//精煉需要的礦石
//Type = 失敗時扣多少的精練值
//Type2 = Script 判斷用勿做更改
setarray .@Item1[0],985,1010,1011,984,984,0,1; //一般礦石
setarray .@Item2[0],7619,7620,7620,7620,7620,0,2; //濃縮礦石
setarray .@Item3[0],6241,6240,6240,6240,6240,1,3; //高濃縮礦石
setarray .@Item4[0],6223,6224,6224,6224,6224,3,4; //鈣
setarray .@Item5[0],6225,6226,6226,6226,6226,1,4; //高密度鈣
//精煉需要的費用
setarray .@Zeny[0],2000,50,200,5000,20000;
//使用濃縮礦石所增加的機率
setarray .@AddRand[0],10,10,10,10,10;
//每多少點的素質可以增加 1% 的精練成功機率
//如要關閉此功能請設定為 0 即可
//Type = 透過素質增加的機率不可超過幾% ( 預設 10% )
//Str
setarray .@StrAddRand[0],0,24,30,36,42,10;
//Agi
setarray .@AgiAddRand[0],15,22,29,37,50,10;
//Vit
setarray .@VitAddRand[0],24,0,0,0,0,10;
//Int
setarray .@IntAddRand[0],15,20,25,30,30,10;
//Dex
setarray .@DexAddRand[0],17,21,27,35,37,10;
//Luk
setarray .@LukAddRand[0],12,12,12,12,12,10;
//防爆物品(預設為傑勒比結晶,請自行修改)
set @stone,6438; 複製代碼 setarray .@Equip$[1],"頭上","衣服","左手","右手","掛披","鞋子","飾品","飾品","頭中","頭下";
for ( set @i,1; @i <= 10; set @i,@i+1 ) {
if ( getequipname(@i) ) {
setd "@EquipName"+@i+"$",.@Equip$[@i]+"–^FF0000沒有裝備物品^000000";
} else {
if ( getequipisenableref(@i) ) {
setd "@EquipName"+@i+"$",.@Equip$[@i]+"–^0000FF+"+getequiprefinerycnt(@i)+" "+getequipname(@i)+"^000000["+getitemslots(getequipid(@i))+"S]";
} else {
setd "@EquipName"+@i+"$",.@Equip$[@i]+"–^0000FF"+getequipname(@i)+"^000000["+getitemslots(getequipid(@i))+"S]";
}
}
}
if ( @RItem ) {
set @ReRItem,@RItem;
set @RItem,select("^FF0000精煉記憶位置^000000[^0000FF"+.@Equip$[@ReRItem]+"^000000]",@EquipName1$,@EquipName2$,@EquipName3$,@EquipName4$,@EquipName5$,@EquipName6$,@EquipName7$,@EquipName8$,@EquipName9$,@EquipName10$)-1;
if ( @RItem == 0 ) {
set @RItem,@ReRItem;
set @ReRItem,0;
}
} else {
set @RItem,select(@EquipName1$,@EquipName2$,@EquipName3$,@EquipName4$,@EquipName5$,@EquipName6$,@EquipName7$,@EquipName8$,@EquipName9$,@EquipName10$);
}
for ( set @i,1; @i <= 10; set @i,@i+1 ) {
setd "@EquipName"+@i+"$","";
}
if ( getequipisequiped(@RItem) == 0 ) {
mes $@RrcssNPC_Str$;
mes "這個位置還沒有裝備物品唷!";
close;
}
if ( getequipisenableref(@RItem) == 0 ) {
mes $@RrcssNPC_Str$;
mes "這個物品是無法精煉的唷!";
close;
}
if ( getequiprefinerycnt(@RItem) >= 20 ) {
mes $@RrcssNPC_Str$;
mes "這個物品已經精煉到最高等級了唷!";
close;
}
copyarray .@Item[0],.@Item1[0],7;
Refine_Rand:
set @AddRand,getequippercentrefinery(@RItem);
if(.@StrAddRand[getequipweaponlv(@RItem)]){if((getbattlestatus(getcharid(3),1)/.@StrAddRand[getequipweaponlv(@RItem)])>.@StrAddRand[5]){set @AddRand,@AddRand+.@StrAddRand[5];}else{set @AddRand,@AddRand+(getbattlestatus(getcharid(3),1)/.@StrAddRand[getequipweaponlv(@RItem)]);}}
if(.@AgiAddRand[getequipweaponlv(@RItem)]){if((getbattlestatus(getcharid(3),2)/.@AgiAddRand[getequipweaponlv(@RItem)])>.@AgiAddRand[5]){set @AddRand,@AddRand+.@AgiAddRand[5];}else{set @AddRand,@AddRand+(getbattlestatus(getcharid(3),2)/.@AgiAddRand[getequipweaponlv(@RItem)]);}}
if(.@VitAddRand[getequipweaponlv(@RItem)]){if((getbattlestatus(getcharid(3),3)/.@VitAddRand[getequipweaponlv(@RItem)])>.@VitAddRand[5]){set @AddRand,@AddRand+.@VitAddRand[5];}else{set @AddRand,@AddRand+(getbattlestatus(getcharid(3),3)/.@VitAddRand[getequipweaponlv(@RItem)]);}}
if(.@IntAddRand[getequipweaponlv(@RItem)]){if((getbattlestatus(getcharid(3),4)/.@IntAddRand[getequipweaponlv(@RItem)])>.@IntAddRand[5]){set @AddRand,@AddRand+.@IntAddRand[5];}else{set @AddRand,@AddRand+(getbattlestatus(getcharid(3),4)/.@IntAddRand[getequipweaponlv(@RItem)]);}}
if(.@DexAddRand[getequipweaponlv(@RItem)]){if((getbattlestatus(getcharid(3),5)/.@DexAddRand[getequipweaponlv(@RItem)])>.@DexAddRand[5]){set @AddRand,@AddRand+.@DexAddRand[5];}else{set @AddRand,@AddRand+(getbattlestatus(getcharid(3),5)/.@DexAddRand[getequipweaponlv(@RItem)]);}}
if(.@LukAddRand[getequipweaponlv(@RItem)]){if((getbattlestatus(getcharid(3),6)/.@LukAddRand[getequipweaponlv(@RItem)])>.@LukAddRand[5]){set @AddRand,@AddRand+.@LukAddRand[5];}else{set @AddRand,@AddRand+(getbattlestatus(getcharid(3),6)/.@LukAddRand[getequipweaponlv(@RItem)]);}}
goto Refine_Ing;
Refine_Check:
copyarray .@Item[0],.@Item1[0],7;
if ( getequippercentrefinery(@RItem) < 100 ) {
mes $@RrcssNPC_Str$+"[^0000FF"+@AddRand+"%^000000]";
mes "[原機率^FF0000"+getequippercentrefinery(@RItem)+"%^000000 , 素質增加^FF0000"+(@AddRand-getequippercentrefinery(@RItem))+"%^000000]";
mes "物品已經達到它的^FF0000安定值^000000,";
mes "繼續精煉可能會使裝備損壞,";
mes "即使這樣您還要繼續精煉嗎?";
next;
if ( getequiprefinerycnt(@RItem) < 10 ) {
switch(select("使用^0000FF"+getitemname(.@Item1[getequipweaponlv(@RItem)])+"^000000!","使用^0000FF"+getitemname(.@Item2[getequipweaponlv(@RItem)])+"^000000!","使用^0000FF"+getitemname(.@Item3[getequipweaponlv(@RItem)])+"^000000!","不了!")) {
case 1:
break;
case 2:
copyarray .@Item[0],.@Item2[0],7;
mes $@RrcssNPC_Str$;
if ( @AddRand >= 100 ) {
mes "只有精煉成功機率低於^FF0000100%^000000的物品才可以";
mes "使用^0000FF"+getitemname(.@Item[getequipweaponlv(@RItem)])+"^000000精煉唷!";
close;
}
mes "使用^0000FF"+getitemname(.@Item[getequipweaponlv(@RItem)])+"^000000精煉";
mes "額外增加精煉成功率^FF0000"+.@AddRand[getequipweaponlv(@RItem)]+"%^000000!";
next;
break;
case 3:
copyarray .@Item[0],.@Item3[0],7;
if ( getequiprefinerycnt(@RItem) < 8 || getequiprefinerycnt(@RItem) >= 10 ) {
mes $@RrcssNPC_Str$;
mes "只有 ^FF0000+8^000000 到 ^FF0000+10^000000 的物品才可以";
mes "使用^0000FF"+getitemname(.@Item[getequipweaponlv(@RItem)])+"^000000精煉唷!";
close;
}
break;
case 4:
close;
}
} else {
switch(select("使用^0000FF"+getitemname(.@Item4[getequipweaponlv(@RItem)])+"^000000!","使用^0000FF"+getitemname(.@Item5[getequipweaponlv(@RItem)])+"^000000!","不了!")) {
case 1:
copyarray .@Item[0],.@Item4[0],7;
break;
case 2:
copyarray .@Item[0],.@Item5[0],7;
break;
case 3:
close;
}
}
}
Refine_Ing:
if ( getequippercentrefinery(@RItem) < 100 || .@Item[6] == 0 ) {
if ( ( .@Item[6] == 4 && getequiprefinerycnt(@RItem) < 10 ) ||
( .@Item[6] == 3 && ( getequiprefinerycnt(@RItem) < 8 || getequiprefinerycnt(@RItem) >= 10 ) ) ||
( .@Item[6] == 2 && getequiprefinerycnt(@RItem) >= 10 ) ||
( .@Item[6] == 1 && getequiprefinerycnt(@RItem) >= 10 ) ||
( .@Item[6] == 0 ) ) {
goto Refine_Check;
}
}
if ( @AddRand >= 100 ) {
set @AddRand,100;
}
if ( .@Item[6] == 2 ) {
set @AddRand,@AddRand+.@AddRand[getequipweaponlv(@RItem)];
}
mes $@RrcssNPC_Str$+"[^0000FF"+@AddRand+"%^000000]";
mes "精煉 ^0000FF+"+getequiprefinerycnt(@RItem)+" "+getequipname(@RItem)+"^000000["+getitemslots(getequipid(@RItem))+"S] 這項物品";
mes "需要 ^FF0000"+getitemname(.@Item[getequipweaponlv(@RItem)])+" 1^000000 個";
mes " 和 ^FF0000金錢 "+.@Zeny[getequipweaponlv(@RItem)]+"^000000 z";
next;
if (select("是的!","不了!")==2) {
close;
}
mes $@RrcssNPC_Str$;
mes "鏘!鏘!鏘!";
next;
if ( countitem(.@Item[getequipweaponlv(@RItem)]) < 1 || Zeny < .@Zeny[getequipweaponlv(@RItem)] ) {
mes $@RrcssNPC_Str$;
mes "抱歉您身上的物品不足!";
close;
}
set Zeny,Zeny - .@Zeny[getequipweaponlv(@RItem)];
delitem .@Item[getequipweaponlv(@RItem)],1;
if ( @AddRand >= rand(100) ) {
successrefitem @RItem;
if ( getequiprefinerycnt(@RItem) < 20 ) {
mes $@RrcssNPC_Str$;
mes "請問您還要繼續精煉嗎?";
next;
if (select("是的!","不了!")==1) {
goto Refine_Rand;
}
}
mes $@RrcssNPC_Str$;
mes "恭喜您物品已精煉成功了!";
} else {
mes $@RrcssNPC_Str$;
mes "抱歉您的物品精煉失敗了!";
if ( .@Item[5] ) {
failedrefitem2 @RItem,.@Item[5];
} else {
failedrefitem @RItem;
}
}
close;
}
複製代碼
我來回答