飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************; g- }+ t- S$ K! A4 [- ~, E

" x. j. ?/ S: R7 |Mover.h
- z% ^& S7 U, s0 M. U, E% X2 L' z: n) F
**************************1 M' R% Y2 m" v7 \

7 F  [2 X8 h% n- _/ i2 |( \搜索: BOOL   IsPeaceful()这个函数0 a& f+ g7 o- e& n
9 c( [9 _9 j% ?/ l
修改为:. i! A  Q6 U4 k/ p, S" u1 }

% ~, ?+ B. }3 p% N3 m- A. d BOOL   IsPeaceful() # o6 \6 h4 q0 W
{
+ u7 R, E9 O3 F4 [9 O! \/ E  if(m_dwBelligerence == BELLI_PEACEFUL)3 v  x# b, n# E& T1 q
   return 1;
9 D/ i* }' s6 Z' F. P& T/ G, f9 r  if(m_dwBelligerence == BELLI_PEACEFUL_R)
- ~. ~& G+ ]- T! b   return 2;
! G$ @! _  `, l8 R6 t3 S; U9 B  return 0;
* _& g8 a  S! F  p4 \6 ~$ }3 C( M7 C- Z; F+ _/ c0 C
}3 I- K) a2 h7 i+ K4 l7 G

* I& k$ Z: R$ `: r7 i& G其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
0 J; O# N3 V+ ~# g( u: h2 z' |: v
****************************
# ^; u3 H2 M$ u. {4 Z7 Q' L5 q
+ h6 d: ^% G# m0 E# dMoverRender.cpp* P) p; t4 ^* ?+ @+ P( g1 c. a  P
9 c, \# f( e6 j8 u/ b% _) k
*****************************5 \2 ]6 H( q* ^# h
6 S- b9 f/ g  E" U, E0 m2 Z; }/ d" g% q7 o
搜索:if( IsPeaceful() )
2 x) |5 ^4 ~* `  M* f
9 Q3 q9 R  o+ B3 ^5 z; d7 G修改为:4 ?1 |5 F' F, ^) b4 ~# i, d

* J" j7 j- z. Q4 R& l   if( IsPeaceful() )
5 y$ _/ R- a% H   {1 c, b9 g  ]5 B9 S. Y; z4 y# i
    switch(IsPeaceful())  e( i+ F- F* k2 I4 e  }
    {* F4 N. {/ e! z+ N
     case 1:
$ C& ^. Y" y3 ~7 x7 x/ F0 w       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
8 K9 r: p# A; U/ }& [. g0 Z, X       break;4 E$ v5 T% f3 ^$ N( h/ P0 I; g
     case 2:
( J' p5 f8 k5 E* k2 l5 ?       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示2 g/ Q1 L& ~& u' s. {9 _
       break;
) R5 e. h2 W* ]: h1 y/ F    }
2 h# S# E  W" j' `$ p1 ^9 K   }
% u3 P5 W( T  U  R9 H4 b8 o/ J   else( t* v7 i) T  r' C% Z
   {
) t7 Q5 A  i1 W& ]. \    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.% O. a& G. h- t- j& a
    {
2 k* ~' D8 z$ I     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
& G! ]* b/ v9 H* k7 C    } else
3 s- a6 n& y+ ]6 C9 q  z    {7 j' w7 ?  ]0 h% l4 ~
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
/ f5 U8 [: |" ~7 n& l0 c0 V5 U    }6 D8 ]: o# s9 p0 R4 d7 {8 @( A: c1 F
. c$ l: g% [! N% T) M% D) S. B
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。8 x" u, U$ a* O. o& m- c3 A
% ^7 Z7 q& `/ E  e1 a
自定义多个状态即可实现多种颜色的显示。- K2 {# m3 t5 r* M0 c8 u
. R. B. ]# n. R
" v2 i* X( y  V+ \





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