飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
; h- D: c3 Q$ w- f
" j: j# K  q) ZMover.h: X) s% D: `- h9 m+ c0 }) ~9 S

6 s6 u; C8 v9 Q9 J8 l9 `**************************
. v5 l: B& @: U6 n4 d' Y# K9 g; a) c, v; }! f
搜索: BOOL   IsPeaceful()这个函数+ O6 ]* i% ~5 h; @& k9 G! g

  G/ n. M- u( c( N3 E) z& ~6 s) q2 _3 H修改为:
3 [- y1 u* w0 l1 T0 X% u! d0 R$ {9 Q
BOOL   IsPeaceful()
( D. i: G. @; K- B% N { + Q* e" m2 G$ ?! `! V
  if(m_dwBelligerence == BELLI_PEACEFUL)
; D+ h( B7 ~) ~   return 1; . |4 |: u: h% T1 y2 R( r6 l+ r* e
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
  H: T* G9 L/ A  u" J5 f   return 2;: R' Z- S: }6 O) x/ X7 c3 \+ ^
  return 0;0 U9 j5 P& p- Q. Y% f
+ U- ^- S' a! o/ G8 ?
}
, a/ O) N) y3 H, T8 D* ~6 s3 m: N
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。$ c. W3 u9 q. T  u- N8 k) p

, v$ ^* W5 i! U$ K1 s' x! r+ k****************************: B. J# {' ^/ I6 u& z

9 _4 O7 [: D$ r. XMoverRender.cpp
( [- ~$ u/ V" C. ~, i/ v, N4 {* s! W% \8 n6 e2 ^1 @
*****************************# K1 Z( X  E8 ]2 ~  h. r
1 ~( b/ x7 H3 p8 P* |- A( F
搜索:if( IsPeaceful() )
2 c/ d( S* }9 z9 b# r/ a( w% L) g
修改为:
) E; D% |8 m. M* ?
  d2 \+ h3 p; G* i! c4 i   if( IsPeaceful() )* ?0 W9 t5 `8 J4 k) b6 e
   {9 c) ^+ X1 q% d# q
    switch(IsPeaceful())& S6 z$ `! \, O; m! P1 c1 U- t: Z- W* f
    {) j1 w& }" b; f; a& {( I+ ]$ B
     case 1:
) k3 S$ l! r8 w       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示% \2 J, I2 S# X% U! I- ~3 q
       break;
: A5 `, |' K3 g6 ^8 m- n' o' V7 ^     case 2:
" q6 B, |/ W# n7 B( m8 {% V2 X       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
" D" @- i2 v& O, W: L& Q# ^, k       break;: ~& p# k2 d9 E- B* F
    }
9 K/ _6 T/ A2 `# N   }6 e( T* n8 G5 t8 J( a, f& C
   else6 f# R7 q) H% k" \  Z8 r: C
   {# c: }  K, p2 P6 h9 P
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.: b5 s. Y& ?- [, {8 [! @5 B
    {, h9 ^# [, j. n
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
& L5 p+ i  K8 M3 }7 G: b    } else
' y' T+ k  J2 x    {0 [* y# {9 c1 n2 W  x6 v
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
- N$ f0 L+ {4 i1 w! E5 ?    }
+ O$ r- c7 C: ?. z6 d8 Y
' n/ F0 d( Q: g8 O! D, d使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
  f& U1 o+ a# H$ w2 n7 J
" B. m- _% Y2 O0 k  |. Y* ~自定义多个状态即可实现多种颜色的显示。
! [! [* t, m5 ]1 b0 G6 k, [# T2 X3 G

2 s% U8 [1 Z8 a




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