飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
: E/ x- M" l3 D& B% X$ W
3 x5 Y+ y  q7 z( D$ l, f1 qMover.h1 N1 N& I. D2 s4 |; w
3 c: l, k' d( d8 R; m* z
**************************& t$ d2 {. e# c- h# R
$ U3 c0 ~3 Z: Q* K9 i8 k5 B
搜索: BOOL   IsPeaceful()这个函数0 ^. r5 `8 W/ t# }$ c9 @

2 K4 L/ `; b0 t/ _0 l7 Y* z修改为:
: d' W# k& R! c6 c3 v. D& S4 d0 w/ K8 e- R
BOOL   IsPeaceful() ! T# n5 F; r4 Q8 E
{
( v1 |) C9 w8 Q  if(m_dwBelligerence == BELLI_PEACEFUL)
! G( x8 G1 E( r' Z9 C# W# c+ I   return 1;
* q& Y# y7 w5 M7 L0 S  Q% j  if(m_dwBelligerence == BELLI_PEACEFUL_R)- H6 ~1 i, |' |9 ]9 `. C
   return 2;/ G: s, m, T! b
  return 0;
2 q8 |' H: n2 F$ `/ @
9 F# B5 B% h" W3 k% ] }
. n" Q' Y$ k* l7 g2 H* |: M$ o$ q7 f: U  }. `
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。4 u: r: X) a( r3 |) i, Z* t; Z. R
# a% X* ^7 \9 D/ S5 v( ]4 X
****************************
( x9 B3 w0 p) `0 q; C/ N' @5 y6 I5 ~# h6 U/ W% `5 J
MoverRender.cpp
  Q% W& x3 S3 X% U) r3 }. H+ c% F3 t
*****************************
  U# d( y8 a, R& t! w
6 m& x  G9 N; Q. R# l, o搜索:if( IsPeaceful() )
* e4 {# S: X3 N# ~; K
$ ]/ T1 {- @7 l修改为:
6 e+ }% F! z  i# T, t5 N( ^7 y7 ^1 V
   if( IsPeaceful() )
' V6 e9 n+ I9 v, Z# k   {
! C# O( ?  o5 p/ {    switch(IsPeaceful())  f* {$ o" |3 e- ?
    {) \- M$ y7 ~8 Q( C+ h
     case 1:
" K6 t5 D/ r0 T- W0 p       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
1 X( v; J/ D' O( r0 r       break;. V* T9 t( H0 g  b
     case 2:
$ A/ F: f8 N2 B1 D) y9 @       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
) L2 T1 N/ a- M7 r7 E       break;
, B4 d# R' A8 i, I9 ~* v    }$ `% Q) G/ U  I* K
   }
- O# U( h  `. J/ ~6 X! l  `$ h   else
, }8 Z* d  }' N$ _; @   {
3 _% V( \" \5 R" Y$ {    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
! W* ~' l; F4 x    {
5 h- Y8 a% x' i9 }     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      $ M, ]% z0 e- t4 D7 l
    } else
4 T- Q4 D4 K: \9 R    {
7 U9 s: j5 J) P: n) _, P) V+ I     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );# O) s9 |8 {" Q* [) a7 ~1 j9 o( Q
    }
% G: V7 o2 A. A3 s2 S2 H& N& ]5 L5 e: C/ i
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
! J; M/ a, R/ o9 E+ [: F+ M/ v( X; x0 o  T4 h' V& c% L4 ^% E* C
自定义多个状态即可实现多种颜色的显示。
  L9 C6 r* [' S7 u" e6 R8 \
. A/ [( d& L( X1 E9 j
4 T0 }  h) l6 g& |1 V4 B9 M4 H) T




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