飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************4 T' K/ k; C# y9 Z: Q: r  Y

! u/ o- `3 s; G6 p6 n1 z' z$ d$ \Mover.h
4 h& Z, s9 p1 C/ G$ s
' e- C4 g: U1 ]  a6 D**************************1 }2 {% w  A9 V7 c4 O- A. F8 c

$ z& v2 C; G* o& ~+ ?6 O搜索: BOOL   IsPeaceful()这个函数
; ^# `1 g, d6 b, M( G! D: n$ K- a1 e- A7 [
修改为:
5 ?3 S2 ^) A" l) W: d6 e* [* v7 i+ X+ ^' ?; ]" G
BOOL   IsPeaceful() / t+ U  M* |$ K2 V- I# Z
{ 9 D" y) \' @( Y$ N6 {8 U
  if(m_dwBelligerence == BELLI_PEACEFUL)
! P# R" p( Z9 d- O" n& Z4 X1 M6 @   return 1;   E) [% S2 Y- y. N; ]9 \8 n2 V
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
0 @; o& s; }; v7 A, V2 N   return 2;
- C5 X9 Z) o. W1 M1 l8 _2 x  return 0;5 ]) w+ ]9 a6 U# ~% N
9 r' j0 ?! I/ q
}
4 {8 b& l* y% b$ I  ^% I) X
) Y! G( P+ V4 Z2 z其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。+ y# ^% s2 b0 b/ {& ^, v
0 U" R, u; T$ s$ f' V. ~
****************************$ \. }2 D1 O- }
5 p0 f% X! ?1 Z7 C! E
MoverRender.cpp
) E" X3 Z7 q- h; _* R( n2 y
' p: C8 p: ]4 h, _*****************************
$ I  W1 H) P3 K6 Y) C: Y1 J, y& e+ _& ]5 U
搜索:if( IsPeaceful() )* p! d* o# D5 T! @8 A1 y
" Z6 p9 m% o# B9 S7 E/ m3 v
修改为:0 u' u8 r" p5 S9 U8 m5 F  \( p
. m  S9 `' A3 x! y# @3 b4 L2 a
   if( IsPeaceful() )
0 N7 G) `$ o$ u) \% S: g5 o. K   {
# ~7 B8 [0 A6 M    switch(IsPeaceful())
7 U, O# |$ y* I5 N    {
) |/ P/ I5 l2 [( M/ H  h3 r     case 1:$ R3 g3 m" u7 H2 J
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
) f  a+ T1 K8 j; k1 G6 Y! i6 o       break;
+ i3 q8 ^$ S% H4 ?, I     case 2:: F  j5 b: x& u! s4 p% e6 @
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
* T8 P/ r9 z& C       break;
  I" V, `: Q& K2 x$ q1 D    }. ?" @" v- l( o. g- [0 u) s
   }
& w# B# p  o. T& \" ^* ^6 s  @   else
# b4 i5 s& b" i/ W   {
+ j* P& l5 _  f; P) [! r3 I    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.% C% \( m2 `6 H$ v
    {$ V3 \+ p  y) u! n
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
% s1 R+ z) z& W. A$ ^6 f1 p, |5 M7 _    } else 3 k/ i1 ~( M8 ?7 F9 `* Y; m
    {5 ^" z8 N  k. z$ O
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );) S5 ?# N3 z% f  H" |+ g
    }
7 z6 T2 T( Y8 t# b  Y1 {' m7 V. a& ?; l# i0 u( ]  R/ Q% j( q
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
' V3 _; j9 W: q& H. n2 \- F$ g7 F. F/ Z# E
自定义多个状态即可实现多种颜色的显示。
& \  U$ m$ V( R/ L3 Q
1 l1 D; `6 w& J$ J% ]! A& l% e7 g! o





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