飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
/ V5 |& w' z6 D3 _/ g
1 A, m- u2 K, r0 @0 PMover.h; D& E$ P, X  B. x: k. J

1 D2 q& r3 G( V5 U4 i9 ?* P**************************8 @  U0 Z$ K6 x* q* {; r8 z1 v' D

3 T" m$ t: b0 }4 s; o搜索: BOOL   IsPeaceful()这个函数
. T0 A7 @# @/ B; v; H, [# R! `9 `. R/ Q0 D/ ]; N& X" f/ {  |; _: o
修改为:
+ G$ ^3 F5 ~! p
3 {& `3 ~, V8 v  ]1 j BOOL   IsPeaceful()
1 R0 [, ~# E4 n' `" l {
, z5 A( u* W: {: E/ j  if(m_dwBelligerence == BELLI_PEACEFUL)% B! I: s% A( W
   return 1; : T0 I: \" Z) e* b4 ~) a# Q2 t- h
  if(m_dwBelligerence == BELLI_PEACEFUL_R)3 J) l: ?5 D1 c: U! ]9 j
   return 2;
5 ~5 x8 R; m: C, J+ i  return 0;: l5 B8 s7 `6 v( i. E; l

3 x$ G1 C) s0 W" g+ v+ ] }3 y  N4 K: l2 g" H; j
5 n, O9 m. H3 ]; m" k3 ?5 T' v
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。# F9 V- N, g4 Y( i, I
- n$ g, [! O1 U) S
****************************7 a8 ~. k9 W) D3 ]
. c: e0 s5 C" B0 C
MoverRender.cpp
3 Q, f7 R% e# \' u1 d; n* i
6 o9 m7 \; N6 u0 Y*****************************
! \7 Z! {$ N) n$ F! u: ^* E% T+ Z
2 N" V- m1 d. N搜索:if( IsPeaceful() )/ O# W8 T9 c' O8 C& i1 }5 O0 I

- f4 B& d1 m0 r修改为:
% A. A8 i) S# b. @9 H: p
2 h% F) W' B( N3 c- W5 t   if( IsPeaceful() )  d+ [* J# W) @& M
   {
0 y$ G) P; f4 |, E7 k  o% ^( {    switch(IsPeaceful())' P2 A7 ^% d' h2 H( @
    {/ P- R" ^' I+ [+ W' |2 X4 ~* n
     case 1:6 v5 p5 `' J) d$ R! e  U6 i
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示2 A. K1 c. Q% C$ \. A3 b- ~4 M' E
       break;
0 r6 D  v3 @; Q, F* X8 G& M     case 2:& d  e9 m  o4 [- P8 v( h+ S( e
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
! G" f1 }: O% W! i: z$ _2 {       break;
6 e: d8 `$ v5 y    }
- U+ a: w* u0 p+ z   }% d) F! B( m* J# }7 {; j
   else
- B5 b- ?$ H+ m1 H  G/ \, r% g   {
: U8 s6 L% s) T3 a    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.$ d- @6 L4 n3 _1 S' O
    {1 Q* e/ A0 K' D1 n. h
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      ) w& t2 u) x" U  V
    } else
) ^  C) f& x0 W    {' @! k9 i  H$ U1 o
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );% Y* u. \; U- J
    }
# l3 s  x; M7 f, E9 k/ @& \, m# t9 P3 n
- Y* |- ?7 C( s8 h使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。+ g/ |9 y1 ^: {% a
" G" c9 Z) P% O* N" O. r
自定义多个状态即可实现多种颜色的显示。0 k/ [, `+ Q! C2 J0 ^4 r

$ [$ T6 O7 P0 ~% l3 d2 E  z+ m6 Z* [5 E# m8 Z





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