飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************  q# `3 E; n0 }$ n) B' ?$ z+ R

+ _: }9 V( a% u; I( tMover.h
: K- U/ C% X( r! B+ y9 q; K, z9 ~& F0 {7 m% b& ?) z9 W
**************************7 @! |% e1 f: l# D% ]3 E9 l
% j3 S& N' l6 I. f- z3 K: U
搜索: BOOL   IsPeaceful()这个函数: o; X1 S" m% v. f! B  b' N
+ x; u! d7 E: Z
修改为:
. L( z5 F' d. \0 X0 v8 ^% w
* J' g$ p# e$ I5 F6 m0 @ BOOL   IsPeaceful() 8 [# M$ }  z$ i6 n- f: ^- D$ V
{
3 k; H; [9 t$ @. _  if(m_dwBelligerence == BELLI_PEACEFUL)
/ l# a& a( a! h* N! b   return 1;
& x& N$ Z% W; j0 t7 s' C$ ?: i8 I  if(m_dwBelligerence == BELLI_PEACEFUL_R): t2 A7 D$ k3 w. q& ^1 {+ J
   return 2;
) C0 M9 D1 P7 R0 \# H  return 0;
7 l3 G- t& A, r) e/ W9 r; N% V& v
9 V! d8 H8 A3 ^+ _8 R1 H, M! w }
# o6 U  }3 R& m$ G7 ~6 E' ]# \/ M0 r2 j" A9 [% s3 J, J
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
; E& J4 m& H% \% X, m" ?3 n
& }% B9 k' Z/ F# r  n& b****************************
6 C, {8 x& C  X" _4 t# x
  `# _) n% R7 dMoverRender.cpp2 f8 [2 v3 S, d; o: y7 {5 }8 ?4 |/ F

( g; d; E6 l8 g/ f*****************************) s5 F8 V" t$ C1 f5 \6 l
5 u) j  t: O9 v1 `2 K! u. R
搜索:if( IsPeaceful() )
0 \* L% N- R% L7 w* C0 E% z7 e8 d" n; o5 `4 k: f) e
修改为:
8 Y8 b; w+ X2 E3 z  |% h/ `7 u
6 o0 }4 j/ |+ S$ H( B% a5 {7 q   if( IsPeaceful() )* \2 o2 l" K; J, O6 I3 w+ n
   {
+ ], E  h; p1 j    switch(IsPeaceful())
9 t3 N8 t6 i5 W    {
, e) n+ b2 g+ \4 n     case 1:$ ^) b0 ^) h6 J' p2 [2 {+ @" ?4 e
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
( l% g4 h1 I' h2 z1 E7 P: Z       break;: z$ p9 l! O7 g9 ?; N
     case 2:- Z* H  B! w# V7 z1 F) G: a
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
: w0 T, e8 o( I$ o       break;
/ a% x  O( h" ?/ m4 C! ?8 o" ?3 c    }
$ ]. M$ o' R2 }0 D% ]   }
8 \. o; p) ], E/ t/ g+ @4 e) t   else
& [) _7 Q' K$ j. f" ]. {: E3 k   {
0 c- ]) D0 v! L( d2 t    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
4 K- A! ]7 n' H# D6 P    {
; m/ J$ {! t* N2 U& C     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
1 `( `  E9 J4 ?9 q' R+ D    } else ) B) N1 q2 Z1 S2 b0 P) [$ Q) x
    {, C! ]- E! R) m3 Q  F
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );8 l5 k9 ?5 G8 z+ _
    }. M: d: ?6 R( x7 X4 J
3 g$ K8 ]' j1 |$ k
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
+ o6 @" m; H0 y1 ]' _* D  b0 k* l  e! Q
自定义多个状态即可实现多种颜色的显示。
4 T6 I5 \) k- w
3 }/ L( d, N% z* W0 _9 T2 F4 g4 @





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