飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************9 l, r( J' D- T- h, f- a
! y( `  C% W- e* s' v
Mover.h
& R/ J" y% ~. k" Z1 H+ k- E6 q0 E+ I
**************************
2 A# o4 e. W+ s3 C( P! J1 C
8 [; ^9 }& I3 B8 e2 S( `. Z搜索: BOOL   IsPeaceful()这个函数
0 L( `+ @# X6 |8 x0 B9 {' K5 f0 ]. F6 ^  e5 O
修改为:: k- M0 i) `$ t) V3 g

4 R  K0 Q* \% B3 y BOOL   IsPeaceful()
1 |/ {' M( n6 y' u" H { 1 X) ^4 K  [2 ]' \; M# g- Z
  if(m_dwBelligerence == BELLI_PEACEFUL)
$ ~- d# V+ s5 A- X. r   return 1;
" _& T9 }4 e8 M# G  if(m_dwBelligerence == BELLI_PEACEFUL_R)4 f* p" M$ k6 B3 x, }+ N
   return 2;
& e: f" E$ r# Y2 b! x6 I3 K7 o  return 0;$ q- u" E' q, ]; W& h6 \
* @/ |1 a. ]2 V7 \0 c
}
2 |0 b* j0 e% N1 v2 Y7 r9 m' |' ?2 N0 A" B: A
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。# N- ]0 ?: X0 B) h* \* G
6 c# D. [2 c) i9 O$ @( s
****************************
  l. m: d  T# }" Z6 i- D; z) S; J+ d
MoverRender.cpp
* n; a# ?9 C- s8 e% n* P* s( p& J% z( r
*****************************4 J6 d" @3 |5 `) F' q+ u

" }; `2 A6 X* N9 d搜索:if( IsPeaceful() )
3 O" ]; _* u7 G: ^5 E! f4 m& p$ k5 D8 k
修改为:. P: O8 m3 @5 n3 S

+ A( l1 z4 B+ R8 [   if( IsPeaceful() )/ A+ _* t+ _' x" k6 A. J, l' g
   {
- t* e7 y0 }% U. H1 V    switch(IsPeaceful())
0 m4 R( K" f( l' t    {
6 v* v2 h; y& r1 e     case 1:
$ ?* l: K% ?! P- V3 a  ]       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
0 v) ~8 X* N! v  C       break;
+ ^* n2 G% P3 P$ x, O" l; h  D1 {& `     case 2:
2 I8 N6 b% a$ ~& y" [) ]: ]       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
2 q+ P8 W0 K( l* s2 p' U/ w: k( f       break;
! g) t' K2 Q) ?! i/ }3 x    }
* b% f  q) t- o( L; t   }! `* L( M4 X" x8 L7 ?
   else
5 d: X7 H! i' [  g3 Y+ x; B   {& C$ l0 w+ K+ ^! m' q" b! z9 C3 z
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
0 t& o* q, a' W    {5 V. f" J& B7 Z3 {
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
$ f  K& ?0 t3 z1 W    } else 5 n6 b' W7 \3 l, Y( E& r
    {% _& g2 V) ~  j& a3 D
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
( I) x. p( W2 m$ A1 W+ ~    }
0 G* Y% H& C) S! g) r0 G# e# ]
+ D/ r9 |/ D; O使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。. M( K" N+ [: s' G, K/ [

. |' v! K: y( y( E自定义多个状态即可实现多种颜色的显示。1 w" _9 [$ W0 ]' X% a8 u
: b7 E4 H7 k0 J: U" R7 P( }  D

  R8 g+ ^! Y# Z% |5 H




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