飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************$ ~: i, b. A- L# ~( }' E, \

0 p" E3 O/ |- h) qMover.h1 `- u; W% `; l- s" ^! M1 f
! T% O% U8 X( F5 y
*************************** }) @8 Y8 m" U1 ~! C5 X

# H3 o% O& r6 R& N- M. h% A6 B搜索: BOOL   IsPeaceful()这个函数
' t9 Q4 y% ~$ L2 p  K6 d! M, u* n  S) ^& V% U
修改为:" u' r& Q. o4 u& B7 b: ?
* U( b9 J9 P6 p* m4 a( \/ l
BOOL   IsPeaceful()
+ B: y; \% V% ]' J6 X) x( Q( d/ S {
: Z5 c% ~1 g; O5 h  if(m_dwBelligerence == BELLI_PEACEFUL)
) V; p8 ~) G6 L& q: C, \) P   return 1;
9 i6 @+ U' Q4 B8 L" q% [, L' I& K' c  if(m_dwBelligerence == BELLI_PEACEFUL_R)/ T* H3 J7 V6 l
   return 2;, K# n' y! U: F* {: O
  return 0;
5 ?  w( E# q- G3 p& o- \! w4 j& A, w" v* ]2 G% r, U- K9 ?
}
( B( w7 ?* l( F
. F$ s! j& O9 f7 c其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。" ]" Q) F8 x) l/ R$ ~5 o1 c
* ]  O! S. g5 Z; M3 u
****************************- u  N7 x( w1 I! w) K4 g

: O# `2 r& J2 ?  M8 r  C0 u8 ?MoverRender.cpp
4 P- Y1 o: y* Q, @1 O, P4 j  D
7 N# u, u. w3 R3 V/ w5 \* ^% r*****************************
; b' h: E6 x  f% O, j/ J3 t9 ~5 t) R4 {4 u: }
搜索:if( IsPeaceful() )+ h" K/ n! ~& b9 B5 l* S! l
  f; C7 _& Z: x; o; P/ a
修改为:
2 M! F- k/ ~+ N9 N0 _8 ?& G" ]; D2 r) N- I
   if( IsPeaceful() )
/ q) G+ ]. w5 C& w1 Z8 |   {
% v1 g0 r8 x. A0 O    switch(IsPeaceful())2 w4 m  D7 o& F4 i
    {0 y) ]" j( m7 g5 \# F
     case 1:
3 K4 p0 M/ V* T- S1 m       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
1 W* I# N8 a9 v* |* L- l, ?       break;. {3 F. T2 G8 G* M6 V3 `1 |
     case 2:* ~, H% V; p3 y) V- I  Z
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示. f  E# ~/ q) m! P7 e( U8 a
       break;) a. m; W: w2 d0 ^( W
    }
; j0 W9 B7 Z+ H/ {+ ]3 Z   }6 |' D1 e. }. B* m& _
   else5 L0 o, B" e2 s" B2 e+ O3 Y
   {/ R9 N$ ~& |6 h9 s5 o; U
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.) G( i! J% h$ W9 @. R9 p
    {
5 w* m( P! E5 @     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
; c% B2 C: u* A$ k. V- n    } else
% ]1 p* ~; J$ f+ \$ X    {& c) A5 P4 N$ _) U
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );! s2 B8 G* X4 q% [+ y1 _
    }0 L' f2 y1 m& ?' f+ m& J

) e' L! Y- l: z( Y使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
6 n+ k1 A8 `* d( k( l. J% B/ z! D. N# Y6 d8 m8 P0 P
自定义多个状态即可实现多种颜色的显示。
+ ~4 z- C0 N( i! g
+ n+ Q+ S. e; X- q
: ~$ C* E1 j' E: ]# j9 ^) Q- f$ o6 L




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