|
|
老飞的完美武器虽然我也经历过不过早忘了咋回事,应该是系统赠送的吧,现在星辰搞出的我也没玩过不知道咋产出的,既然有人说是开箱子,那咱就用箱子得到好了。% z/ z6 b6 d8 p. j1 k
" m8 q# \3 J$ S% t# S3 G- c* q
首先是武器名称为红色,看我的另一篇文章有介绍,星辰是设置了完美武器这么个属性,就是U武、绿武、普通的那个分类,具体哪栏我忘了。可以自己设置,我出于测试就以dwItemRare==300 这个属性来判断好了。 M* i1 F3 d' e# [) M: }% F
9 n* J9 c# M# O7 {# y5 ?0 [: \: \+ ]
然后是开箱子得到装备,在user.cpp下的函数。
^5 }; Y$ X m5 e+ c5 g1 R( i; }/ b# m
DoUseGiftbox( CItemElem* pItemElem, DWORD dwItemId )//这个是开随机箱子+ p4 N' z: d1 u) F
6 J2 _3 \2 r. u4 C/ h# O
DoUsePackItem( CItemElem* pItemElem, PPACKITEMELEM pPackItemElem )//这个是开普通箱子6 i7 O: M. n6 b& ^- x. m) R+ D
: O3 d7 J2 D' i
在这两个函数体下加一个判断就行了! i$ Y) U5 @7 S! T& u/ ?$ E, _+ w
# z8 Z& W6 m9 G* N9 z; x if(itemElem.GetProp()->dwItemRare==300)
9 F4 t. R( G9 ]# u6 i {
7 ?' r* } m/ z7 @" I' k5 a itemElem.m_bItemResist=(BYTE)xRandom(1,6);
2 t0 Y% G2 e& S8 z' n2 C1 q itemElem.m_nResistAbilityOption=10;8 |" }8 _8 e0 n9 p @) c
}
f/ c8 W0 V# D+ z8 A
& p' i1 Q5 K: y3 k+ K就是上面这句。
, U" h, x: k( S' J G: B' T5 o3 s" P% d7 ?9 Y% P
至于加在哪里,不用我说了吧,就在创建物品之前就行了。
! ~4 N. c. l1 j% S) n+ c9 I4 N+ R: l/ n2 k3 H8 m5 G: ^+ A4 w
% g. k J, }0 o2 N' `9 ^7 n$ x+ P+ j. Q0 ~+ n5 v# }0 r: ^
对了,现在的端一般都是加20才满的,如果不想让玩家还能继续加工,就在加工那写个判断了,如果为完美武器则提示,特殊装备无法加工然后返回即可。也可以直接让他属性定义成20,这样已经满了就不用再管了。 e8 y4 t& M- ^9 O
P k5 ?5 q7 |% R2 e$ f1 c
2 v% m0 s0 b) V& V% P
6 e+ `, ]3 E9 g- O$ H# x
# N! n) h# [% [5 l
7 |, Z2 M" b, I; r活动给物品的话那就模仿这里面的创建物品的句子写就行了。# p! L {8 f2 L: \6 _( n/ f
4 U" f# p' b5 c3 w* q# `; O
以上写法已经通过验证。不成功自己找原因了。" D8 Y/ R2 G2 ~, Y+ w3 L
5 Z$ ] b9 s0 B/ F- [: A///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ( R4 K0 w' d4 n5 g
$ E. d2 O( g! U3 p BOOL CMover::CreateItem( CItemBase* pItemBase, BYTE* pnId, short* pnNum, BYTE nCount )
" N9 Q$ e1 t0 O- O/ w
. E+ W1 H' f* D) s: \! C' {% v 在这个函数下修改的话,只要修改这一处,任何方式获得的都是完美武器= =
; R8 r: L U4 S" _ E
9 s; {) @ X% w' e' E+ u1 m6 |从B包拿出物品也会调用,所以不适合用在随机属性的物品上,这样可以随时换属性了- -
$ L% B, ?8 @: k8 `" _* a
# j8 I& n" X4 Q& m1 s6 [/ O8 H; F0 X v- f- D5 ~! Y: ~5 l
|
|