飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
9 t6 X8 Q" m& T$ \4 u" b+ I3 j+ |! ?" E  R- Y
Mover.h
6 B3 a# x# C( l0 x8 V
- L, \: U7 }3 x% t/ f. h  |**************************
* t2 c& U. F" e5 V% a7 d2 x* |4 ?, a2 n4 [: b2 V: `
搜索: BOOL   IsPeaceful()这个函数( `$ X" ^) k. c8 l; }

  r) L) q8 e5 S4 z7 U) B修改为:
6 g9 n& l$ k0 i# e6 e' ~) |/ m+ |: |) ?8 b( M9 F, d' O
BOOL   IsPeaceful()
4 [9 s- h9 R2 [  |! L+ ^* L {
4 [% }$ X9 W1 f' v  if(m_dwBelligerence == BELLI_PEACEFUL)
* B/ V- T6 s" v3 Y. S# b2 p   return 1; . H8 G7 E( T; H; u- c: w
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
2 ^/ s5 ~4 [% a# _/ \; ?   return 2;
* V/ k( g: n0 ~8 X  return 0;2 F2 U( M6 o9 ^: O3 m% y$ H. J

6 ~! X. C8 S, l" f6 c5 l% y& P }6 f. {2 @  G, R- W

8 y1 M- U  B- ?其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
' Y# w$ ]0 t% [6 z/ H9 E0 Q4 b* F  c+ s+ Z, z
****************************
, L% U5 m! o. X; i2 q- U4 g: s& X. L) V
MoverRender.cpp3 }$ W; g8 z9 s9 ]) {, G
0 `1 w& O: M/ A) q0 ]
*****************************
0 t  u8 p" a4 O5 [7 B  [- ], V& d: r6 w+ ^1 C
搜索:if( IsPeaceful() )( R6 @3 C8 W( ^$ @+ Y  B, w2 b
* `3 k& t' h/ l  d
修改为:5 M8 j$ r! r3 J2 P% l

. u' M8 s6 R  s8 v$ m8 G/ _   if( IsPeaceful() )
( b) y4 w, G( k   {4 l& `9 `6 m% v! M2 o) Y9 Z# K
    switch(IsPeaceful())& f4 \2 U' y  d. c6 ^9 d
    {
+ F! x! P' g5 ]1 r     case 1:* M7 B% w! ^, Z" T' ~! P
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
8 L/ }$ u- r6 T+ d" f       break;! r4 W/ p! B8 }; T- ?
     case 2:
8 M% h: v( w6 Q; q8 ^       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示5 W7 X% O; v& Z9 T; t( \; b* G
       break;: S/ F' @+ y% C  L3 J8 c
    }
7 N, R$ ^4 y# I9 _8 {   }' R. I# O) l2 g6 g+ A, g. T9 {
   else
! w8 |6 i* _8 v! M/ O- U   {# h6 o" D: l, X& Y
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促., n1 ~- n- `: r+ F2 {5 R5 E
    {. z$ E* v* ?) C. z0 E
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
7 V$ ~, C6 o- E% C8 s    } else
, D3 G5 ?. V. F  w& I6 q    {
. {: V' @, t2 e8 ?/ h* m     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
$ d0 }0 u  [& O2 s! X3 Y* X! W    }
( z0 s/ E; S+ c- r6 T% I7 R6 ^: G3 x( W, E
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
. [: z. X4 p: D& b2 b: G; k0 S: k6 x" |  y% j: T
自定义多个状态即可实现多种颜色的显示。  ~% K+ u# Z) L9 p4 l% f+ [
% k- D5 f9 m% U" |
8 S5 O1 C& t. o) ]





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