您当前的位置:首页 > 传奇技术

传奇私服装备打孔及镶嵌宝石功能C3引擎

本文出处:网游动力作者:本站发布时间:2011-05-28阅读次数:

装备打孔及镶嵌宝石功能

对应DB

用于所有装备打孔镶嵌宝石
Stdmode类型为71 Shape为5种宝石种类 0 攻击伤害增加, 1 物理伤害减少,2 魔法伤害减少,3 忽视目标防御,4 攻击伤害反弹

2238;元素红宝石一级;71;0;1;0;0;5124;0;0;1;0;0;0;0;0;0;0;0;0;5000;5;0;;0;250;;
2239;元素黄宝石一级;71;1;1;0;0;5125;0;0;0;0;1;0;0;0;0;0;0;0;5000;5;0;;0;250;;
2240;元素兰宝石一级;71;2;1;0;0;5126;0;0;0;0;0;0;1;0;0;0;0;0;5000;5;0;;0;250;;
2241;元素紫宝石一级;71;3;1;0;0;5130;0;0;0;0;0;0;0;0;0;0;1;0;5000;5;0;;0;250;;
2242;元素绿宝石一级;71;4;1;0;0;5128;0;0;0;0;0;0;0;0;1;0;0;0;5000;5;0;;0;250;;


用于所有装备打孔镶嵌辅助宝石
Stdmode类型为70 Shape为镶嵌成功率

2254;黄影石;70;5;1;0;0;2576;1;0;0;0;0;0;0;0;0;0;0;0;20000;5;0;;0;250;;
2255;蓝影石;70;10;1;0;0;2578;1;0;0;0;0;0;0;0;0;0;0;0;20000;5;0;;0;250;;
2256;暗影石;70;15;1;0;0;2577;1;0;0;0;0;0;0;0;0;0;0;0;20000;5;0;;0;250;;
2257;仙影石;70;20;1;0;0;2602;1;0;0;0;0;0;0;0;0;0;0;0;20000;5;0;;0;250;;

装备打孔界面如下图

第一部分 打孔

1、用户打开打孔界面时,触发:@_HOLEINI

   D99返回打孔的装备的孔数

2、放入材料,触发:@_PUTDOWN

   D99返回材料的stdmode, D98返回材料的shape,d97返回孔位,D96返回叠加数,A99返回材料名。如果失败,则D99返回-1

3、取下材料:触发:@_PUTUP

   D99返回材料的stdmode, D98返回材料的shape,d97返回孔位,D96返回叠加数,A99返回材料名。如果失败,则D99返回-1

4、点击打孔按钮,触发: @_STARTHOLE

   D99返回孔位 D98返回装备makeindex值(系统调用,不可更改)

5、相关脚本:

  SetSuccessRate 成功率 (传送成功率到客户端显示)

  MakeHoleSucc 打孔成功

  MakeHoleFail 打孔失败

  SetHoleButton 位置(1/2) 可用(1/0)   例:SetHoleButton 1 1 将装备打孔按钮设为可用  SetHoleButton 2 1 将镶嵌宝石按钮设为可用

 材料放入失败:PUTDOWNFAIL 孔位

 设置孔的颜色:SETHOLECOLOR 位置 颜色 (1/2/3...) 对应:红/黄/蓝...

例子:

说明:D90表示成功率

[@_HOLEINI]
#IF
#ACT
mov D90 0
mov D91 <$STR(D99)>

[@_PUTDOWN]
#IF
Equal D99 -1
#ACT
Sendmsg 6 材料-1
break
#IF
Equal D99 70
#ACT
Inc D90 <$STR(D98)>
SetSuccessRate <$STR(D90)>
#ELSEACT
PUTDOWNFAIL %D97
Sendmsg 6 <$STR(S99)>,不是打孔材料 0 249

#IF
Equal D99 70
Small D91 4
#Act
SetHoleButton 1 1


[@_PUTUP]
#IF
Equal D99 70
#ACT
Dec D90 <$STR(D98)>
SetSuccessRate <$STR(D90)>

[@_STARTHOLE]
#IF
#ACT
RandomEx D89 100

#IF
Large D90 D89
#Act
randomex D1 5
SETHOLECOLOR <$STR(D99)> <$STR(D1)>
MakeHoleSucc
showhumeff 114 21
Sendmsg 6 打孔成功. 0 254
#ElseAct
MakeHoleFail
showhumeff 144 21
SendMsg 6 打孔失败 0 249
 

第二部分,打好孔的装备镶嵌宝石

1、放入宝石,触发:@_PUTDOWNDIAMOND

   D[99]返回材料的stdmode, D[98]返回材料的shape,D[97]返回孔位,A[99]返回宝石名。如果失败,则D[99]返回-1

2、取下宝石:触发:@_PUTUPDIAMOND

  D[99]返回材料的stdmode, D[98]返回材料的shape,D[97]返回孔位,A[99]返回宝石名。如果失败,则D[99]返回-1

3、相应脚本:

  检测孔的颜色:checkholecolor 孔位 颜色号 p9返回颜色值

  宝石放入失败:PUTDOWDIAMONDNFAIL 孔位

例子:

[@_PUTDOWNDIAMOND]
#IF
CheckHoleColor <$STR(D97)> <$STR(D98)>
Equal D99 71
#ACT
SetHoleButton 2 1
Mov S98 <$STR(S99)>
Mov HoleIdx <$STR(D97)>
#ELSEACT
PUTDOWNDIAMONDFAIL <$STR(D97)>
Sendmsg 6 宝石与孔颜色不符 0 249
break

[@_PUTUPDIAMOND]
#IF
#ACT
SetHoleButton 2 0

[@_STARTDIAMOND]
#IF
#ACT
RandomEx D89 100

#IF
Large D90 D89
#Act
DiamondSucc <$STR(HoleIdx)> <$STR(S98)>
Sendmsg 6 镶嵌成功 0 254
#ElseAct
SendMsg 6 镶嵌失败 0 249