飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************: ]. u, ^) g8 l0 J/ n( S

6 z* ?+ x( _8 o+ ?0 xMover.h; c: t* }8 Y6 a4 {/ n
' z5 N/ N+ Y1 S" Y9 d
**************************4 i' \; W1 `+ S9 ^- o. N

) V/ D+ ]/ f* q$ L+ J搜索: BOOL   IsPeaceful()这个函数
, O, q6 T( @, k" X' ^, z; l; B% T$ [1 \( p4 P
修改为:1 Q/ Q# ]0 F5 ~3 }

6 T( {9 J2 B3 A9 r  h! o* G BOOL   IsPeaceful() 6 v2 u; w, P' d
{ . V% k. p1 l) W
  if(m_dwBelligerence == BELLI_PEACEFUL)
! C9 U. v8 l0 ^3 M   return 1; 3 ^0 Q+ q* O1 T1 }0 Q) _
  if(m_dwBelligerence == BELLI_PEACEFUL_R)3 v6 B/ l) M2 P
   return 2;
0 M3 J! R1 S$ m/ |. G! f  return 0;
# A2 J9 N' S1 p6 c5 q$ M3 S. d' e$ l: x* n' q) ?! M: }( ^3 e' H
}
0 O0 \. ^& a- D) a/ J( D
5 Z& ^) a( @8 G- B# M7 G& w其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。/ r; y) k* U2 A9 F5 [& p
* ~  S: [) O# u# ^$ _
****************************
: z4 _0 `! o3 ?- ?- ]) K& g: L. ^4 b' ]8 E* c- r4 B
MoverRender.cpp
$ C% y4 t. m2 U+ e. o/ ]. v8 Q
9 U  X9 w' d# T' w0 X" W* s0 u: X*****************************6 ~3 N3 w: ^, X: g* N
9 P9 S$ Y  @9 ^  M" I- W
搜索:if( IsPeaceful() )$ r+ x8 ^2 O0 J* V2 u, H; m' k# P

$ R) }) D- ~& o4 X: T修改为:3 Y8 Q2 I2 y3 P& X  W& \' i
, R+ s# T$ H2 I: Y/ n$ a( Y
   if( IsPeaceful() )
6 Z! J- p& T/ f" D& p: S! ~   {
, R$ r. x! Z# Q) R) W+ I, z    switch(IsPeaceful())
' K# D8 ~# n7 d; F    {
  P1 R5 g- c$ ~% U! t7 S/ J     case 1:  I) c, w  r9 i( p8 n. D
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
! r2 Q5 j1 P5 z9 d       break;
. X5 a  G* u% ~1 O0 b1 j5 y4 C     case 2:  ?# F2 c2 E' A) V. |9 s  ?
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示% r0 [: Z6 \& I' x: d
       break;
( k8 y; A7 ^" l. Y1 {- P- I4 t    }
* K8 V' _! n# @; \1 ~/ [1 v   }0 U0 L1 e# ?- t  ~. i0 X
   else
1 h  o( V$ x) u$ n   {
) ^+ Z) D# f' T$ G    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.5 r* M3 V) e' E, c4 R1 W, P4 Q7 b
    {1 ~6 e( @0 H) ~
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      + @9 A: o- r2 B6 l4 H( m. h
    } else % N1 Z7 ]1 e- X4 T/ a9 R% r
    {
1 h# F% u! [6 v# W/ i4 e2 f     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );% m, v. r, d/ g- m0 T* I. Z
    }
% ~. s8 b) _, i$ d# d5 C  T1 X! C) J9 Q9 B! E& f2 X) J; i" `# p! J
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。6 ^7 K9 I" t+ ?

$ {! }$ E3 f1 m9 V& B3 P, G1 n自定义多个状态即可实现多种颜色的显示。
( R! Z" V  J* X/ ?$ M& H5 h) S- ~2 ^$ s% }

7 n4 q% }$ Z5 u' V/ e, H




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