飞飞世界论坛

标题: 给npc名字换个颜色 [打印本页]

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************. S1 J$ g+ L7 G6 i$ |
5 ]  H( @5 {* \* `# j, j) q' B
Mover.h+ G! J+ S4 Q+ f- ^+ }" G1 s' R4 S8 n: ?
. p) N! v( `4 X/ h4 {
**************************/ a) y% c. W9 L% I) b

0 S: ~, q* g6 A) D搜索: BOOL   IsPeaceful()这个函数
) D/ c2 Z( n( {* I4 S  d3 u1 y  j7 }( q
修改为:
+ c4 s, @9 R6 S' C2 t3 x0 \7 k% K" C2 L# {/ S
BOOL   IsPeaceful() ! n1 A# s, S1 Q: y
{ " v+ B5 `6 V; @  R+ B+ k
  if(m_dwBelligerence == BELLI_PEACEFUL)
% ]( X6 ?* O) F% c   return 1; ) }6 C2 t9 Y( _
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
" I  @5 ]+ ?, F0 \" R   return 2;' h2 j  \. o2 Z" M* @, m0 n
  return 0;
% y* [2 U: \" R  C# F' d7 o. s% c+ O5 z; q! G# P+ b+ V* a  r8 Y- A
}4 h! V' Y( |8 J

- y( ^# s: V9 q- z7 P- T5 d6 }" p其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。$ \( [& t- s( e* g# y: J; x
# A7 q$ c: P2 d
****************************
+ B" j) }: {0 O" [: E/ o( L' i
7 N- d% J" ~0 i: p( G0 cMoverRender.cpp2 U# Z9 V. e- @- z% p  ^1 s4 j7 X

( |0 w3 |/ i$ _& O*****************************
0 P; ?' S* x; V) s) Z& H5 J, T* J" C' \6 g" ~9 }$ L( ~
搜索:if( IsPeaceful() )
  F# a% M3 a- Y/ w9 p
; p# H' _! [$ A4 l8 c+ P修改为:' g0 }: c  K8 Q
9 ^) C, z: w' a4 C2 {, @
   if( IsPeaceful() )
  s  N7 R4 {' l+ E   {
6 r- B5 N' K) T8 w    switch(IsPeaceful())
( O  F2 P  w) ]) U& @  m( F    {& O4 C7 H! k# _- h2 ~
     case 1:
, d2 \& j& y0 c0 F' I       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
8 E7 x1 O, D. u       break;
- x4 q8 j+ N+ d! `- V" q* w9 [+ ~% Q6 M     case 2:
. I6 z) I0 O% x* \! i       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示. ]8 m4 d  m; A) X  u; a
       break;
. \1 h+ h% j: U, ~0 I1 P    }
& R- u" g, C- K, m4 k   }
! F  o; x' S, p: \# y   else1 Q0 V$ d: ~5 G2 a* ~5 A% j
   {; R& S) C' i! t( M. }
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
0 h' ]: Q6 r- Y/ b) A+ T    {2 b* A  v' K7 J* Q9 G& X5 D
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      3 S4 P* Z8 ~/ [$ G
    } else 9 p# c% A0 g3 a' [% z. s. K9 _
    {
* x9 W9 ^$ X% D: T; {  p+ e: o3 q: {     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );1 w% D% {$ C8 O" W
    }
, b7 ?2 X" y4 ?+ s; g  q; B* t
9 L* i7 N4 l; W0 X0 R使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。  H* @2 |3 a/ U( O3 x3 I, k7 f
) ~# ], O, K: q3 h& j9 `  A
自定义多个状态即可实现多种颜色的显示。
) _$ j: s8 ?) v  w5 ?5 i$ c; {5 f; [; }' }& O3 h' z
2 E6 T6 @7 J# H





欢迎光临 飞飞世界论坛 (http://ffwold.com/) Powered by Discuz! X3.2