飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
2 r8 e. I3 |: Q: `+ j- L% F& N9 x
Mover.h
( e9 q$ p+ w6 G* d8 f& @% e6 M# }! R: l/ ]& f
**************************
  [; _  G8 P& S& g6 H4 e+ W
, Q, }9 O" x2 U' l5 b搜索: BOOL   IsPeaceful()这个函数
' f7 X' I6 h# f/ C& x, w; {( M) c3 L* h( J
修改为:7 O+ v2 o/ D1 m; A2 D

, h. r" S' H5 i2 l, o* ? BOOL   IsPeaceful()
. P" }( F0 s1 W; c' G! G { $ J5 r& c" ^3 N: {, j
  if(m_dwBelligerence == BELLI_PEACEFUL)
' r. l, |" M- @) U) e3 r   return 1;
: r4 |1 c6 j- @9 C  if(m_dwBelligerence == BELLI_PEACEFUL_R): b; n; _8 T7 d1 O' X
   return 2;
# i$ B" I0 c4 l* L9 f) r  return 0;
2 y) ]: l: T0 P. n3 O  p) v9 X* }4 d) i
}! Z( ^' P) T/ S' A+ g

' B* f4 q# m6 p1 |4 _" \% a其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。. g' J6 h9 v( k' F4 [1 N
6 w# F* O, D+ ?/ [0 x5 C
****************************
. A& A7 R2 E; j- d6 Y9 m/ o! x$ }# A; l3 _
MoverRender.cpp
3 O6 s/ _& `$ ?& B; B; f0 e
% R4 g( G& f+ b( _$ k*****************************1 }6 x# U5 ]+ x7 I4 f, L3 s

9 T# \0 i# ]& q1 |( W# L搜索:if( IsPeaceful() ), M5 Z% L( }$ x* K

2 c+ e. `' d1 B$ r6 C, j修改为:
2 A1 y. d1 o3 _
% b! y4 a- _4 Q2 p1 i. \0 h7 K   if( IsPeaceful() )
3 a5 ], g% w* G4 S   {" K- z/ \9 X) F' O
    switch(IsPeaceful())- }* |8 y4 l8 A
    {8 s0 ?2 N1 Y+ N# o4 m3 w
     case 1:! J* K3 J$ t$ V
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
1 I% A! b' c: R7 j       break;
( `+ @0 F3 f! d, b     case 2:0 w4 _+ O9 Y9 K, p% R5 W
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
8 y0 k9 |5 c& d; S* n       break;
8 }# I% T, U$ x- ]- x0 R& l6 z    }
/ r8 S$ v: I7 ~) c, N) M! Z+ m   }* X2 p  F  h+ m% [8 S
   else
& _. |/ a% c( {2 z! X   {
& d# D. N9 k" b+ Y( e- O9 f2 N    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
  U, q; G# f, g    {
+ g' Q9 I& ?8 x9 O. \     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      1 ?$ b1 I; u, w9 f
    } else 6 |  G6 y0 \: D3 M
    {
5 j* r5 M4 F" K0 Q     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
- P- w9 {: k; H8 J  M, @0 t    }
4 a. x' t- C  N9 @" s! V1 `* i' j5 t/ x' Z& o
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。0 @7 |- c6 ^# t* [, R
' ^' u' ?0 H2 g
自定义多个状态即可实现多种颜色的显示。
- G/ H/ i2 I* J! q; L( C- y) f' J" R+ R  f- S, Y: y, C4 |

: B$ i$ I6 H5 f% X, I6 c$ Y




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