飞飞世界论坛

标题: 给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

4 R0 \5 d, ?" ]& E7 x% v, W




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