飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
7 H* S8 [) l+ N6 X' w, W& N" w, }8 r, C$ o; T; Y4 Z* I0 e
Mover.h( ^* L# ~. v, g6 z0 {9 a9 ~5 v

5 o5 J/ o( i* a+ A- l7 F. Q**************************
4 L3 k# k5 m& i1 O  j* l+ o& [
: Z! X2 t3 P  d/ W9 i/ e搜索: BOOL   IsPeaceful()这个函数1 j  @' |' S. r, G  l* Q8 |* P

) f' z. T" o4 d0 g0 J5 C3 }& ?修改为:
* N7 q7 W6 A9 F/ z* B1 k  O( G. B
$ Z/ c6 C& D8 H5 c" M( H BOOL   IsPeaceful()
% b' ~7 d- Q7 k2 _8 ~5 n/ O$ J$ ] { - @) i4 K9 M) {( p5 x/ r6 N& |3 |2 Y
  if(m_dwBelligerence == BELLI_PEACEFUL)( p3 J+ ^4 `9 y$ h+ p
   return 1;
4 v0 m2 ]$ r: P$ X- I  if(m_dwBelligerence == BELLI_PEACEFUL_R)
0 j3 o$ m4 T) C. a1 z& `9 _   return 2;
2 U6 z8 C- z/ `# X  return 0;
- X! D4 S* ?9 R5 V! N
; X4 X$ i! g  t$ g- t7 O }; }* N& [3 Y' \" h

/ @. m' y; r/ p* ^3 }3 g1 D" s其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
$ m* n: T0 e  B4 Z# s1 b; C( f( B7 f9 Y9 }& `2 w. [! q7 Q' z' f
****************************
' `7 A; V+ T5 K" ^& n' O
  F  p' j0 T: TMoverRender.cpp1 ~( D! I9 A6 v9 z! v& F2 c  a

+ P5 v8 u* f: x+ T4 j) \' B*****************************, [& Z6 k, p( ^5 o$ |( q; X
& i% s' k0 y4 A9 b8 Q9 l9 B- f
搜索:if( IsPeaceful() )4 p( I9 l* F) R* M7 z

" Z; k. i7 B3 \9 k0 J: ^修改为:
% ?/ M4 @) ?* i4 u- C' L! ~
1 }- a( i; h. u6 A8 x   if( IsPeaceful() )
# o4 t# B& T8 x# m   {
2 c7 I( F- \; ]! f; X6 y) i    switch(IsPeaceful()), z8 Q8 n2 F; ^
    {! D  I% e3 b" [$ s, x  [) h1 \. d
     case 1:$ G9 D& k" F* E0 u8 I0 W& _3 z" t
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示5 f$ v! B' z2 ~4 b! e) v' M
       break;
( T1 @3 T, E! V4 ]' g4 [- U1 O     case 2:: k% A/ x6 h# Q
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示* V3 Z! V$ X, E  U0 j( C
       break;& G9 s6 Q$ |6 M2 i# m2 G
    }$ _5 ?9 y3 g  H% o; Q- F
   }
: l" e  c5 K$ y, |   else: F9 j! }2 r8 E
   {  P. [  }. I) p2 N
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
$ X  `0 ]( p8 |3 k: a    {( n8 I; @& Q' d# F- l, {$ P7 m  k" O7 S- I
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      ) `$ A4 J6 t0 [% P
    } else
; W0 Q9 N( a- I9 g. ?/ w0 g6 h    {
! i; S! X: Y  V8 h, x* s! R     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );+ q# j( v, Q& t1 X+ \) E
    }
: J0 A( x/ k5 r* q
/ h& L* K7 X8 |: y使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。; i* p4 A: g5 m+ A

& W$ n  ^  k5 N4 s  ~' q, R* g自定义多个状态即可实现多种颜色的显示。
! B  l5 ]  |. V7 b9 c1 q% Y. E$ F2 \* k' e

. j( z2 R4 {7 e4 v3 \




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