飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************/ ?; x0 Z, o2 t$ X& a( S4 H9 f( s$ A
# A3 b$ _9 w5 E& u0 f. s
Mover.h& g( r- R6 j0 A, ?
$ j- Z/ k3 I, _, R  a. C) O
**************************
9 N3 ]& @) [0 n! z8 }" O( D
. P+ c2 q- V. b  ?搜索: BOOL   IsPeaceful()这个函数
/ i" v/ r  }3 j& v* c- p- K! i  ~/ y3 j; j: O( Q. d8 }  e; s8 b
修改为:
3 W3 y+ T7 a. z" a# A2 q% \7 c/ R2 V7 J; X
BOOL   IsPeaceful()
- Y. H8 E% f, F+ r3 O; ~ { 1 \2 W4 T( Z- l8 s2 ?% f
  if(m_dwBelligerence == BELLI_PEACEFUL)7 k0 E% F/ R7 I0 H) V- K4 H" v# u- w1 K
   return 1; 8 i& z9 C& ?& ]- w* Y0 u
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
  _0 |( E; h: y) U. W+ B   return 2;
1 a( y8 o3 h7 c9 k& O  return 0;/ U  K& ]5 ~5 Q8 |  k& m" y

3 H! Z: j$ ]' G9 n7 z' N1 Y8 Q" ? }
) T, _' \, ]- X" E2 D
$ s2 \+ I5 X/ ^1 `其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
0 S3 C1 F  n3 U0 p6 e, {' v+ Y
( r- v! L) B' R! ^& h****************************4 ?" [+ l7 Q: `, y" X7 k  w

; |% Y- c) t9 HMoverRender.cpp/ w; s& ~. H0 T$ L% ^
3 m4 L4 z0 h: t+ `
*****************************/ U- k/ i6 d) R+ W7 s8 D5 |5 @

* `- k" J8 }, V9 n搜索:if( IsPeaceful() )3 A! T  }; Q3 t2 d" b

6 _1 ^3 F& y# G8 O  ?/ p; S修改为:0 l2 o! k; q" \! D$ [6 F2 G

0 ?+ i0 Q  o/ b1 J7 u0 i% J   if( IsPeaceful() )& b9 P2 |; I8 p* e! B" G
   {" n, ~* {! e2 {8 f! |9 C
    switch(IsPeaceful())7 r0 _+ w; R: P. d) X* c; b! H2 H/ S
    {6 o* q; a2 ]1 ^; a
     case 1:
3 M2 w4 X4 E5 Q9 H# t( p1 b2 c       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示; a# P1 ]3 f4 y
       break;
/ k2 k. D! f% J, @. o9 L% s" v     case 2:
3 L: ~* I" U5 {- z% C& Y       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
! c3 A0 ?: `, m: f" O       break;
- }# c3 G# k3 F0 m    }
# t$ i% m& w, a( t0 c   }) j2 L' |6 x1 `# H
   else3 M4 N/ ]7 `. B* d
   {
* s: [+ S& q" Z1 I# m    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.& B( J! J% k3 u0 h7 Q, r; I* W
    {
; M! i0 e5 _* o( u. P+ z5 ?  ?     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
+ I! Y# v1 O3 ^# i" r  U$ B2 s    } else ' m! Z* W0 L8 G2 [  z$ |6 Y% y
    {0 |/ u- a4 }- b: u$ |+ o8 S3 Z
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
) n- g$ V( q2 n7 z) Q0 g3 G    }# [* ^: g! k! C6 P* J
: o) p. \8 ^$ M5 [/ w" [2 ]( R
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。* g  W0 r! g# h/ t
+ Q, \2 }' R+ d1 F$ o- q  T# A3 q% F
自定义多个状态即可实现多种颜色的显示。
  x6 ~' o- c& I1 N/ L/ c8 I4 ^; i
+ f# {* O( L+ k# X' ^8 N
) P) x9 M0 P& k8 k( o




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