飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
* W& P1 g3 J( S; D1 Z% T, F+ o5 D# s$ `: ^, Z0 h
Mover.h- t3 p% o' e* f  r9 g
- |! ?. E) X) ~/ L  t$ y+ m
**************************" `6 a( w( I9 d; ]# [' y' T
7 s" L  r, @8 O1 b* @+ P" }
搜索: BOOL   IsPeaceful()这个函数
) F  F( R* Q( ^6 K4 n& D
+ O: l/ b8 ^( E# x* K9 c& o0 y修改为:
& `2 a; _+ p& ^$ h/ V# c' R7 V. M: W& h& \$ B
BOOL   IsPeaceful() 9 h) H. u7 z) C8 @. [
{ # F. Q1 X$ i- [- W
  if(m_dwBelligerence == BELLI_PEACEFUL)$ D5 i& V* ]. I+ T& A# B
   return 1; 4 d/ g/ {$ r' j) {
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
5 @# u6 u( J3 i% I( x& o6 f   return 2;  f/ G, q/ n, W& q
  return 0;
5 L. u" L9 F( |7 h: c
" M7 y) [- @6 s+ X& U& x/ ]* { }
4 G$ O# R! O% N) H
( M& a  q# K; u; ^& E& K; ^$ ]其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。+ w, g6 Y" W6 ~; E( t! t; h) W7 [

  ?1 D; A& S; D# ~( Q****************************7 D* M* p8 F+ o( y

# Y6 r7 n. _! CMoverRender.cpp0 R% G8 Y8 r& k- u( ]

  G5 Y: O6 ~0 ~9 O  N2 _. z$ o2 w*****************************" }, e% ~5 D+ e+ k2 Q) J8 h5 }
: `- j2 J( P; o: t$ j+ \5 ]
搜索:if( IsPeaceful() )
& u% a/ o+ y0 [, w$ Q; U: D( p; F# S. i# |. H' X+ r
修改为:$ W1 u8 G/ r, f; Z5 F! n

; S1 D" E% Q' a* F! M   if( IsPeaceful() )
# Q% P9 e- C3 S- v   {
& L' ~& E+ C+ `    switch(IsPeaceful())
4 y7 ~- h5 W- {2 @# k7 `1 E    {
, a1 a$ n* P0 L  P; o- i     case 1:
  B6 A4 Z! ]5 h: i0 m# [! m7 `       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示2 U4 i& n4 V7 X$ a9 y
       break;
# @: P8 E% J4 u8 L, N1 X2 Y     case 2:
2 E7 I/ K' a5 l- ^! B6 ]2 v       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示# j6 F4 k/ v6 }5 C2 ~4 w6 Q$ J
       break;7 D9 t/ ^+ j5 x  W2 H" S; j
    }$ T: O- R& u3 k& H% b, _
   }6 }8 W8 d5 I) o0 r7 a
   else) j! y! j% _- D, N3 f0 m
   {. r1 |: a/ D0 ~+ Q5 O) a; ?+ E
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.- x  r' J+ q& c) g+ h
    {" {' a# t* Q% @+ p: E
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      5 W* @2 `9 p; O4 w. g% c" i; [
    } else
0 M% ?4 j' ?+ u' F    {+ L* A% B! r: G! b
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );* \* P6 `. b) s% K  r( `- Y: _, J
    }
7 q& g, Q- ?& p8 g
+ r: n1 |, ], E' p" i$ P; D# B2 _7 Y使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
/ _0 }2 O$ V4 b' g4 h& i& `7 p/ Q& x+ Z7 J2 r
自定义多个状态即可实现多种颜色的显示。
5 L8 z! ~; A* x, y% f$ x- c/ a% j6 j9 G

/ V3 U( i" r4 ]7 p* |* Q5 W( O. u




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