飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************& d/ A* f7 s* M' b- R

, i  p9 f0 ]/ v7 O6 {Mover.h1 |' a1 Z1 }4 X
' K9 L/ G" |! q' {/ z( l$ @" R, Z
**************************$ e+ M* M* ?  a+ b( Y
* t% R  r1 O) c8 ]" r2 c
搜索: BOOL   IsPeaceful()这个函数
0 j7 W3 p+ \; i8 [1 S  b3 u9 W" }; ^7 Y; K; S& e1 ^
修改为:. f8 }1 b1 D# a( v( h
# z$ [7 V6 R3 M  ~- e. \
BOOL   IsPeaceful() / w6 q- c+ p% r. W: \1 }
{
8 d1 }( R' e, r3 r/ M  if(m_dwBelligerence == BELLI_PEACEFUL)
  W+ B& t4 O& {( P   return 1; - l* W1 a" r1 U) {$ c
  if(m_dwBelligerence == BELLI_PEACEFUL_R)$ k* R* H* M) u
   return 2;) a; P9 L; v# K: H2 J+ ?$ E
  return 0;' ^/ r5 v$ P$ C+ [2 p5 `& I

0 V8 K1 b0 y# h }
) G1 t9 D% c/ {4 s: d+ x5 P% c6 M0 ~( W7 s% \$ r
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。" d  m0 o: X8 |, K+ B" e
3 f2 D1 h* k$ B, ^
****************************+ f2 g* V, n. x0 n

# s* a9 c! K1 O9 i' Y8 Y% U; iMoverRender.cpp5 b; g$ |) ]0 X- g! X4 A6 R: Z

# q0 H$ E; c: G$ {$ l( w1 x2 x0 c*****************************
) z/ _$ S/ @; L. ]7 S* Q2 H) w! \$ I! H9 p
搜索:if( IsPeaceful() )
' P/ W& N% J. {+ I9 x* L0 w+ w9 n
/ u( C8 W  r, L& n, g修改为:7 I& ^$ O) W( F9 K

6 i- v" X& q9 C( \% a   if( IsPeaceful() )
* Q+ x9 ?. U& T0 F   {6 l- R$ `* P; T9 N( o: q0 r1 N
    switch(IsPeaceful())3 u6 x2 D+ `1 z! V6 |4 g
    {& v/ V7 h6 _1 l5 T
     case 1:) r) c/ s5 }4 `0 ~: @
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
7 A; l; J& n! D1 b       break;
, z3 g/ X) o; S1 E' \$ h     case 2:9 \- l. c; h+ h: ^6 S# s
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示: ?( X9 v3 H0 Y3 I' v
       break;
# J5 C" m  Z" y6 Z; g+ N2 {/ E    }1 @- b% G, C+ D
   }
, N7 ^) \: j3 w   else
6 ~( v+ U) c' d7 i   {
# u; e$ a5 a- F" l' g4 A    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.$ B% ]1 `" b7 L6 R  x7 D: z
    {
) ~% v0 B$ b4 E2 y  G1 H3 t     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
- ^8 L7 q8 O$ z8 x, A0 ^    } else
2 T$ [' r  S- l: I; b    {
- m6 }' t& X8 k4 k. w% k% q     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
/ h+ H7 {- J- I- C0 r9 }0 ^% h3 w$ T    }
+ [. n1 q% z. j! `: G6 m; Q, }0 f4 x* _- P4 C
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。/ p# m8 W2 z0 v3 ?* s! }

/ z) N0 }+ j; E& h& B8 a8 K自定义多个状态即可实现多种颜色的显示。
- \: T1 C. i3 U8 _' A2 }: P# ~9 E+ X$ O# P
7 @9 [9 t& ]/ p' f/ B" Z) J7 w: r





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