飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************& p0 I, j# _5 x0 Y
, {0 n! d5 j! a4 R% v. o
Mover.h
/ ^2 i+ {5 H9 p! c) z* ~6 C% [, n( p( @' u3 k2 I. B
**************************
0 _; G. L- k  g2 u% p
7 k* p3 W" d1 J; T搜索: BOOL   IsPeaceful()这个函数
1 }# ?- ~( i! G* R/ ]! l2 f3 f, N, t* e: h9 G
修改为:; ?- r3 H8 z' \
" s( B2 b1 m$ c& i, h- Z" `) L& G$ I
BOOL   IsPeaceful()
" G  N' R, T7 ^/ P3 r3 N { * s( h/ P+ W2 R2 G" D7 k4 Z. w) I
  if(m_dwBelligerence == BELLI_PEACEFUL)
, \" W$ V7 M5 w. _6 V   return 1; ) p3 B- l5 [% O& ^
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
: k- h1 W& `: y( }: Y" l& i1 R7 C   return 2;
' t$ b! _! Z/ s% l  return 0;
2 W1 {( H3 E7 A2 B# [$ G1 H7 ?0 R" M4 ?* `0 [1 J
}3 m: h4 l% y# I

* L  [: c- B# Z9 y其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
: i6 X' i  W" H
/ Z# b. w" `* v& M8 n****************************
+ @& Q, m, J. u
2 r0 W+ S0 u- R- J3 X- JMoverRender.cpp4 a, R) W+ |) A6 W' K8 E7 v
7 u7 l/ p5 y1 s* P( L
*****************************
* k/ L1 f4 Q- z5 o" r! k& ]5 W/ t+ L) u) Y7 M" d- X
搜索:if( IsPeaceful() )
+ h# j8 i4 O7 n& K! B
* p' X3 ^# S0 B: M# N修改为:
: Q) i& O9 k" Q* K0 d2 M7 N% ?
/ k7 |+ ^. u1 n   if( IsPeaceful() ): v* n! ~8 ~# c& K* S
   {
; B( V/ O1 P8 i8 L" M2 d% b! ]7 B    switch(IsPeaceful())7 g& ?( M* D, W& s- r& l
    {5 D# K  C) w9 |$ m, [, j" R  d
     case 1:- B* Q; d( `' K
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
& j5 A& L% T; I8 [; f       break;5 _! Q4 ]  ?* c- u3 u$ _- `/ ^* T
     case 2:4 t1 I2 p- x9 r- R/ m
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示, Y- G! T/ d& {/ c& b8 ]8 k; D
       break;. {1 T5 t2 E. ?& k% ?% M& c
    }. l) j3 o; k& h
   }6 @8 @% b8 m- h
   else
; e/ }7 n2 |7 K9 E+ e   {
+ ?( Q8 o4 p" o# T; v/ A    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.8 o8 `2 l0 Y4 ^' Z* W% z2 N  r4 X
    {: ]& W2 l. W" J+ ?. ?& O) N4 ~' t  y; b
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      9 Q( g5 S5 Y% i5 l
    } else 1 o9 B4 ?: t% e& t+ o+ |  C
    {8 Y% X8 e& L( t4 q+ Q
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
5 p" p+ Z/ ]& e1 X% \: _    }
$ t2 ^& v3 Q' w' [
$ _1 g9 U0 H  h4 c7 S使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
+ A( }7 S) m9 D3 U: T; B  x' s5 y. C7 B4 u7 S
自定义多个状态即可实现多种颜色的显示。. V& x2 m0 d9 R* @0 ~
  F3 k" q9 V- G) Q4 x

& v9 J: l3 b9 D, K3 e! X' U: o




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