飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
5 m0 c% D  \% g+ X2 F' i& F! V/ G" B* l/ y7 [. Z5 b% f) C
Mover.h
: ?4 B! S4 d* h3 ?+ _7 H0 d: g; X1 }' e
**************************% k5 i# A0 R5 p
, ^/ M8 k* b8 j9 [! n, V7 E* M/ t
搜索: BOOL   IsPeaceful()这个函数
: \( d& E+ y/ L" }% \0 t% K) D3 C$ j/ t5 V, F8 w" s; h+ c% q2 `5 t4 |
修改为:
. p6 ^1 ?3 P8 R/ b6 Z
& T& l& Q6 P% u6 O( t BOOL   IsPeaceful() ; }5 @. D4 V  ^4 x, u7 u5 K
{
6 j5 S+ ^" |$ g, m/ |7 S- w  if(m_dwBelligerence == BELLI_PEACEFUL)
3 ^. V" U# P+ _& g   return 1; * q" J: I: |/ M+ v. E" k: @% k
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
& {. n* V- }) N2 y   return 2;
/ J0 P  T2 s0 ~' F- ^# r  return 0;2 F- \, a8 t+ g* I1 F
& |; f/ {+ f4 T' O  b
}
0 F% L0 U: v1 K, t& B( `6 o/ u- k9 ?! x9 R
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。- y. W$ r8 V: \6 y, D

7 O. ?. l+ l' v7 G/ x1 V****************************: D6 {* f( D- ?5 R, p( ]* D

- W( T0 ]( f4 ~& zMoverRender.cpp3 C0 K& I" e  M( Y2 e
% G' F2 q: z' i) E& R: |) d7 @
*****************************' p1 ~1 q( j5 `  x) ~+ m
* B+ b, K/ }$ @2 Q* T8 @
搜索:if( IsPeaceful() )6 P( M) O  Q$ H6 j' Z
6 n; a" p. u8 j& T5 }0 o( S
修改为:
1 D$ f: E; A" a$ I0 r5 u& S' |( o
) A8 {( ^( \* r4 m/ P: |   if( IsPeaceful() )
; p- v, l* J1 ^& M   {
. b# r9 }3 @( m% x6 V2 G  W% j    switch(IsPeaceful())% X2 r' H3 e! D2 H- \' X  p. K* a
    {4 |5 y- h  r. c1 W( M8 L$ w
     case 1:' R8 M! z  @+ M! F
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示& ~  p1 k# q: D! N" Z6 n
       break;
% i* g0 }6 n! b# j, }     case 2:- I8 k! |: f6 G* i; q; `1 F
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
% A4 y. U- X6 p$ O5 M& R       break;
0 Z2 z- |& |9 Q& M( \, _    }* Y. r/ |# X  Q$ j6 L
   }( i0 F5 L( X" ^* S" E6 }7 M
   else% C* \( m2 x/ z' p
   {1 P- R0 ]; V0 h4 ]$ V2 E  y# q" k/ i
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
8 j& t/ t: k! q    {
0 q% N1 t; b4 A5 Z. h. C     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      7 ~8 f4 X% g, M- p' D$ G1 {
    } else
; ]" x! D4 @# M8 |( Q/ W* z    {" s4 e: Z) D$ w( n+ w% h
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
6 W) Q) T6 V* Q" s& R% }    }  z. d4 {9 g; @$ m! }: l* z
- ]; R6 j+ |$ H3 h" ^# g$ [8 r
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。9 l( }' }  j! E6 k
' ~6 Q" O3 ~5 [. g- M
自定义多个状态即可实现多种颜色的显示。
  o: A9 v. t$ R2 V0 R% X: d1 M/ D8 Y/ ]) L) G2 l; _
* l. F, D0 m' ~# Y) I# w+ f' L





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