飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
' d! I; T" Y9 o& G! ^% {: r. g& y
. M7 |8 v( c* w2 n7 b2 O0 r$ S( |3 O) hMover.h, L3 c1 p6 Z& @/ j& ~. c" t

- Z- X( }" |! F' N* B  C**************************" r6 J# Z4 C$ J( Q3 M9 P

. v' q/ @  M- s搜索: BOOL   IsPeaceful()这个函数
# V7 c/ N$ \1 N  D
2 `/ K1 [$ x% p! ?& [7 r修改为:
% K( K# ?4 b6 }% o& M
0 |# `; u- h2 V6 ]4 g, U# {' H BOOL   IsPeaceful() 8 x9 j) j' U" q
{
8 |6 w% C- C5 z; j9 @  if(m_dwBelligerence == BELLI_PEACEFUL)
; b3 I2 q+ D. F   return 1; & Q$ s4 E$ W& r( b
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
9 M7 t3 G8 i1 f# e* Y3 F   return 2;+ d& @2 P, u! J, o3 @1 H9 J* k& Z
  return 0;
9 b$ F/ l2 g5 o( \1 q9 z/ B; o# L4 j  o: ?, U% w5 a% @" {
}
% s! `; }; G+ C
4 l, \4 v( I" ^' z其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。- l% \  w' Z3 F
: ]( C% L& n6 C6 x- g) w' v
****************************
% b( |. L4 O6 w4 _( b
5 I4 T! R7 L2 j' A- ?0 hMoverRender.cpp
& s0 G0 K1 ^5 l. B2 H: r" o+ i7 h/ p& d6 z+ R$ S6 O& J
*****************************
8 Q( t  R/ T$ V! M5 f2 s) @5 F! c( i' D  D1 U0 o8 p
搜索:if( IsPeaceful() )* L! ]$ f/ P( n" e" Y

7 G8 q! I) M0 u. W/ G6 \7 a修改为:
# A$ p% z, }. `9 N5 N* f7 K
) s# q. R8 W; ^( O' h   if( IsPeaceful() )% x# n& |, T  N1 j
   {6 k" a6 h6 p7 w0 ]; e7 d9 @* L$ D
    switch(IsPeaceful())
- A: @) K0 Y! p) u4 j. o0 r& [+ s7 g    {
( _- b& H) m+ _% T# I0 P4 W  G$ v     case 1:. ~% y' l, G+ |
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示' e# o4 H' I7 ]. N: |4 M
       break;) t/ x2 K# }: v5 V# @, |+ Z$ b- Q
     case 2:4 c3 O1 z' B: e! b9 |- u. e3 |
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
, K$ T( i: @$ m       break;
( t# c3 Z* I7 J: Z    }
: x% `: C% p) V9 [3 `! g' h+ N   }
/ z  O3 g4 W) D7 F7 L4 X   else  \0 n' B; Q+ O1 ?6 b5 c* E
   {3 {$ \0 m. k% `$ J
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促., m8 k$ r2 m4 y5 s+ |
    {# i6 V& E  b- ?* t5 R& I. G: }
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
0 `' n& ?' N- W; L. M" q- r    } else
' G, `9 A) c0 ]  a# C: ], Q    {; |9 ^0 Q- f  I: I7 Y) p2 O
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
$ a9 I! w5 Y+ O" ]% ~5 Q# w    }
7 h# |3 F. X' {% s% g& U
1 X9 ~3 j) l& b& r6 h9 t( ^9 ~使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
7 z7 f7 R# Y: `7 `4 N. R
6 g; O, s& r7 d% J2 Q自定义多个状态即可实现多种颜色的显示。
& F/ F6 a- i' R' X1 W+ ]1 f. M* V% `5 I, e6 F4 z% ~
* b$ S& D- b+ W3 p/ [





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