主题:【源码编译】关于完美武器 作者:烛天丶 时间:2013-08-21 22:32 |
老飞的完美武器虽然我也经历过不过早忘了咋回事,应该是系统赠送的吧,现在星辰搞出的我也没玩过不知道咋产出的,既然有人说是开箱子,那咱就用箱子得到好了。 首先是武器名称为红色,看我的另一篇文章有介绍,星辰是设置了完美武器这么个属性,就是U武、绿武、普通的那个分类,具体哪栏我忘了。可以自己设置,我出于测试就以dwItemRare==300 这个属性来判断好了。5 ?6 h5 D: h) G3 E: B+ d g 然后是开箱子得到装备,在user.cpp下的函数。 F. P( l5 l1 B9 z9 l8 ~' b: s DoUseGiftbox( CItemElem* pItemElem, DWORD dwItemId )//这个是开随机箱子2 l* a3 |+ }5 I2 P" H; g DoUsePackItem( CItemElem* pItemElem, PPACKITEMELEM pPackItemElem )//这个是开普通箱子& u/ q. y& G9 ?& b7 N0 [- h3 a: K 在这两个函数体下加一个判断就行了% _8 l5 Q, d" C% K0 }; c if(itemElem.GetProp()->dwItemRare==300) {. S3 _7 N$ o' [% {- R# u- f itemElem.m_bItemResist=(BYTE)xRandom(1,6); itemElem.m_nResistAbilityOption=10;) N) |7 O9 @# a; J } 就是上面这句。 至于加在哪里,不用我说了吧,就在创建物品之前就行了。 1 C) @& I' @" `* s7 ^ 对了,现在的端一般都是加20才满的,如果不想让玩家还能继续加工,就在加工那写个判断了,如果为完美武器则提示,特殊装备无法加工然后返回即可。也可以直接让他属性定义成20,这样已经满了就不用再管了。6 j: d7 J* X# b* e- U % v- K/ {9 c% ]& c 活动给物品的话那就模仿这里面的创建物品的句子写就行了。& N K, B' g- q 以上写法已经通过验证。不成功自己找原因了。$ S8 Z; u+ l. V# V7 x0 ~# g6 B( c ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// BOOL CMover::CreateItem( CItemBase* pItemBase, BYTE* pnId, short* pnNum, BYTE nCount ) 在这个函数下修改的话,只要修改这一处,任何方式获得的都是完美武器= =; C+ H" l. W2 `( L 从B包拿出物品也会调用,所以不适合用在随机属性的物品上,这样可以随时换属性了- - |
1楼:路易斯(2013-08-22 02:13) |
楼主幸苦了 |
2楼:lansky、(2013-08-23 17:54) |
完美武器就是个幌子。完全没必要的。垃圾而已。 |
3楼:断点(2013-08-24 08:15) |
这到底是什么游戏啊。。。谁能告诉我 |
4楼:poder123(2013-08-24 08:39) |
不懂不懂,完全不懂 |
5楼:poder123(2013-08-24 08:39) |
函数是毛啊 |
6楼:jian4892(2013-10-29 23:39) |
用户被禁言,该主题自动屏蔽! |