飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************3 r6 M( _7 H; d0 C! b  e
( O& A  W" H( v  {: E1 n
Mover.h6 z; x( N8 J9 B3 \9 U5 \

" K" |) u8 f) t) \! ~4 l4 q; s**************************9 m; p5 J9 K: }5 ^
- S( |5 n& N, |+ v' G4 w
搜索: BOOL   IsPeaceful()这个函数5 C2 i9 G) S$ ?! e

: h/ c  s, ~2 I6 r$ ~修改为:
8 n$ p! V) F# O
4 ?* j2 S  @  E7 b BOOL   IsPeaceful()
1 ~* l( S% p/ v% S- r( ~1 h {
+ Y8 o% Q% ]2 x5 {* r  if(m_dwBelligerence == BELLI_PEACEFUL)
. x/ {' L; T" x/ W- b   return 1;
' r' i" I9 c  v' M# O  if(m_dwBelligerence == BELLI_PEACEFUL_R)
) W% R3 B; i! q. A   return 2;" b% W8 L) U$ D, b6 U; a( @
  return 0;
6 I1 n9 H6 T+ F. g$ @- J  y" B
2 n0 H5 {3 ^4 r# Q }
: b1 L& b, J: M9 O, i
0 \7 J8 g- A; ?5 [$ a; |5 M其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。$ W; }$ r/ W* ~- r/ Q
6 F  ]2 O6 r  w9 g$ n; B( j
****************************, s) {  i% C/ Z+ U( i
$ u& q) L6 u7 s( Y
MoverRender.cpp
. D! g( X6 R* M; K& M& g# o3 t' n+ t, b3 i
*****************************/ R6 y' v- b- P1 y4 n

9 a0 F3 T' R/ B: O  B搜索:if( IsPeaceful() )
; X! x* Q" U3 m9 }1 i2 ~* L
! [5 a  Z0 O7 [8 \修改为:; e: d# L$ H- @( Y

1 }" Z8 h3 [8 C" v3 s+ O   if( IsPeaceful() )
9 V1 R5 I  X+ S; |) o$ Z( I: r3 W1 k* a   {5 M" I* \: o/ G8 ?; t% p
    switch(IsPeaceful())  z/ d" z5 |9 V' K8 b
    {
2 ]) M! r- y5 A1 I# I4 Y     case 1:
3 v% D, ?# y! F' W2 J       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
+ V9 s- j# ^5 i( l, x       break;
( z) `- d- {" v) R* {6 [     case 2:
' v, ?+ J, B, K  f7 L  W1 ^3 I/ h5 [       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
6 B/ s! Q# V9 G$ }/ M! Z       break;* M2 f  E. T( N- Q3 i0 w8 `
    }
; M/ u. `& ^4 M) j0 i0 r2 `   }
" v  R; S  W  l$ {2 q6 E( A; P   else
6 Z4 K/ Q! L$ q   {3 X( V0 E" c. p
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
3 t( R5 P1 P" @* M5 H. a    {
' a* Q/ d& P  S$ W$ f3 n' r     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
6 G5 p- ~7 q- C    } else
2 r+ I- H  n1 V" Z    {; _$ x6 o) K: ], c( L
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
3 {( _1 ]8 k! l9 W# ^: E3 p    }& G. x0 s) ~$ d0 R) ~" w9 Z
2 k: g/ b) D0 p5 \
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。+ ?% |. Y3 }! e6 y7 A# |
' g8 b7 o% f7 j( i, j
自定义多个状态即可实现多种颜色的显示。
$ k0 s3 X7 `" @$ y5 R8 T( p( w
: Q6 o4 f* D8 [# E0 M





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