飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************/ M% T7 Z6 @. L6 f

& V/ y! f* A" \Mover.h
! y! Z: p* C) t+ D  T# V$ p5 w$ J; Q/ T9 [
**************************3 n3 O# G+ I+ ]

1 D. ]. z) W4 A) d; l( j搜索: BOOL   IsPeaceful()这个函数
  X2 y; h; I% b( n+ C2 E
+ O4 d( L2 R. @# d修改为:
: F! n5 q4 B# L) V: y' h* j2 ], r4 F7 [; W* V+ ~% z& q
BOOL   IsPeaceful()
' `, A. G1 Q2 L3 L8 _ { ) f- e% [, x% y3 f+ Z( n( ^
  if(m_dwBelligerence == BELLI_PEACEFUL)
5 |8 f* y/ d/ r( ~   return 1; : P- d. i5 Z, @6 @. J
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
3 i9 \! c! D2 ~6 Q0 t. E. a   return 2;
- K5 K! Y  |% F0 w  return 0;
0 Q7 }3 Q% z  e
# n: M  s# j/ z- @9 r! H9 a! z }& v" t3 E& m1 `6 X
& S# J, w5 ?8 a' _
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。: E/ R9 B0 F# Y( S) v% O# ?
, @$ d4 `! G# N6 ?" P
****************************; W; q" t; p% L9 T
4 Y! O6 X1 j8 Y
MoverRender.cpp
2 w& m3 R) E3 P, h2 ^" n( l% h! M& n) a
*****************************  A+ J& n' i# X) b' s

1 L6 b0 y! u# E/ S0 X搜索:if( IsPeaceful() )
, \0 E8 F  ~( i
) L, N2 n/ A. S) ]修改为:) g, K2 {% K6 t5 |! E

3 t/ N1 }/ g. F  x   if( IsPeaceful() )4 g4 X  k6 i; I' [
   {
2 n% O) R/ m: X% G! a, z    switch(IsPeaceful())
1 H( |9 F) t: ?2 e4 j7 |: |    {
1 e" e7 Y' f) q' \1 x3 S     case 1:# [  H0 U% c+ V# H4 L5 N- \6 K+ P
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
' D9 y, I1 S# U# W; E: V$ J       break;! E1 C1 h: C6 h7 h8 n
     case 2:
5 U* r4 d6 w* M$ ]5 Z& h. O) j- \       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示& a' ?1 p0 I$ v) b) Z$ V
       break;
3 O+ X; M- ]0 k( Y- I# F: |    }
1 \4 C, ]2 X1 S' ]   }
9 |+ Y3 N6 }9 e1 z$ g. P   else
5 |3 ?5 F3 o0 E3 D7 @4 b3 k5 v/ S  O   {
4 ^6 ~1 H; K% L' Q- F7 T    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
- N) X; j7 n( L1 D1 ^8 B* U$ n    {9 I; |& A% t5 S5 O( c4 L4 W  L
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      # y1 \0 m+ W4 m  B
    } else . J9 Y8 y9 j5 ?% @- Y
    {  a4 v  t  p- d+ Z* W! ~( q; `
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );) a& c" J% q: v2 p! G4 {. n5 x+ F8 G8 K
    }
: ~; k$ _* |3 I( E+ j6 a
6 d- n. A( n5 g- y  c使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。% G2 U2 J2 [% L: J7 R
; A9 I! ]& L% t) g. x
自定义多个状态即可实现多种颜色的显示。% H5 E+ n2 f& B- K' r5 S" `

6 u. K0 D& X5 Z6 E4 v1 |
& ^# G; y* ]9 j/ _




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