标题: 给npc名字换个颜色 [打印本页] 作者: admin 时间: 2016-1-10 03:22 标题: 给npc名字换个颜色 ************************** % K9 b' F$ Z/ u9 U5 k; c* ~ , S2 ~/ K2 ?3 j- P: W6 i% {* V0 vMover.h ' m" R+ @% h3 `# r, U) c. \1 o4 O- m7 s) Q' n" G' z
************************** 5 t! i [- D8 D5 h' R& F7 l5 H6 k$ j $ I9 z. T; t% _2 }, C% a0 j搜索: BOOL IsPeaceful()这个函数$ U) r3 c0 M4 h# y r8 K
" q# e4 [+ Y0 H" a
修改为:& y4 T. X( i5 ?! o( a) N4 k
+ Q, o e1 P4 u
BOOL IsPeaceful() # m5 O u( l3 o& _/ X
{ * C/ t/ O n6 d
if(m_dwBelligerence == BELLI_PEACEFUL) ( w( e/ h9 j) O return 1; 4 b0 v2 n2 z& B9 H2 i3 V
if(m_dwBelligerence == BELLI_PEACEFUL_R) # A. a! s+ M9 z$ I return 2; 9 e% R/ A n# _% B; I; ?. M return 0; 5 T* U3 m) S0 `' U" Z; ^+ d1 g `' Q3 q6 I! M. Z; b; M: M D
} ( z0 p6 u" \) N! R! u" Z$ V5 d6 p' _1 E; M6 \& M2 [9 R
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。4 }: i. `" ^0 L( I3 p
! Y. m7 P v( C$ Z! t* A****************************9 I F7 h- Q/ ^. B
5 x" x4 b; b+ v' a3 i$ _; T
MoverRender.cpp % c: b0 Z2 }" v% Q( Y# V, Y# C: A! K3 C
***************************** ; o$ D5 v7 Z9 O; H2 T2 v+ Z8 q 9 Z9 p9 V+ m5 ` m+ g7 v/ l. N搜索:if( IsPeaceful() ) " [' J( `) p" p/ {, ?( o: z& F0 [; m) T% w+ P- n
修改为:# M. w/ h# H3 X( r2 }
/ k7 p! ^$ |2 f7 I) v9 `5 `+ o) T
if( IsPeaceful() ) 8 z; J3 q. f/ M2 v {& y% T P2 K; X# x+ f
switch(IsPeaceful())& k! G# m# g1 {- w+ [8 D
{ 4 R! g' k# L) [, | case 1:0 E2 q L+ N% q
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示6 k$ U: V, o8 N5 ^ w2 F( Z" W: @
break; `8 R/ M4 c6 f4 n
case 2:$ l7 l9 p! {$ D" W0 w/ k1 O$ P8 D
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示; D: m% n3 I- L' [
break; " [ s# P0 q3 m# b) G- C } $ l2 P, m( X7 X3 g9 N2 T }/ \7 V3 }% l; W4 q# z1 Z
else - i2 @0 P" R. ~5 @& \ {" ]0 E4 b) x$ ~' ^0 ~( A9 b
if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.; b0 {4 c" k, X% z9 K
{" j4 F/ E5 i5 Q
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName ); 0 D+ S" F" ]& o) P0 ?9 O } else 6 S, ^1 C4 ?! A1 j
{: N+ e, J" Y% y2 j% |- t0 \
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );9 [# j: n$ d! i6 d, m0 b
}2 ]2 P8 t$ J" m) c. {7 m( Y/ X
3 I. g5 V' K3 @% K( o J使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。- @ `' o' [% D' @6 p' J7 h" e
: _$ P) Q2 q& d5 ]+ f( w
自定义多个状态即可实现多种颜色的显示。 / _7 @+ r: F3 a$ F* f9 k W$ e& B/ x: T3 V* j, M