飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************9 m0 T: W7 g8 j/ k3 C" m5 g  w7 u
( _5 L8 s+ g! p! T' D2 }
Mover.h* a. `9 N+ T8 z4 {* w0 L/ c
, {( p4 w" ~" @- r+ q2 U, F5 N
**************************
7 o& p% a# D# h/ Y1 c" i5 P+ B
% q# T1 ^% P+ ^& |( a. W9 e搜索: BOOL   IsPeaceful()这个函数
# U/ F, ]$ u" d
, m' _. d8 _# D修改为:3 D9 A. w5 k4 i( R7 L$ m* Y
2 O& a  i& \+ {& J- m
BOOL   IsPeaceful() 7 C- E6 w' [8 {1 e
{
- N. A! y, `: T1 G& B' E7 D/ B9 [  if(m_dwBelligerence == BELLI_PEACEFUL)
& G/ o! S# R) k- I   return 1;
# S/ G' {8 Z0 @1 j. T  m  l  if(m_dwBelligerence == BELLI_PEACEFUL_R)
7 a) x9 T5 {  _   return 2;
& r7 s, V, g$ O4 h1 M, ~  return 0;  G0 t2 q- l( U$ Y4 m6 a
' ~5 p$ {: I+ R  W- \
}4 D9 F+ ~2 |! t$ K. b& Q. ^

8 D! n. n2 I) P$ @% Z( }6 Q$ U6 f其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。% F) N) a( Z3 Z; `; V  x
7 ]: E: @" I" n7 ^' c  n1 P& e0 }
****************************9 Z: Z% s4 v. A& S
- A5 t" z3 m- U+ Y. K( _& `/ k
MoverRender.cpp
; y) `* ~+ S! F2 H6 W
2 C$ J0 z$ i4 ?' r; Q*****************************6 @7 x3 I( S1 N  A

( |: F0 J6 h- D3 |* R搜索:if( IsPeaceful() )$ y( e! S- j0 {9 d( a
& a- q( g4 \6 G" s2 `8 Y* l
修改为:
! X) Q0 ~7 T( e7 M& U/ w! G% W2 X$ F# |
   if( IsPeaceful() )
" |* B4 e5 P2 e# I4 f   {% w# r) M+ x* f' }) C# N8 r
    switch(IsPeaceful())
' r& }; R# d5 _1 r3 b    {6 G4 ^3 s4 b: r. `- R3 }
     case 1:
; X7 {4 R$ v2 o( P5 f# c       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示9 ?( S& d8 G9 A6 a3 w0 s
       break;5 _: @5 n; Q* A% m! T5 S5 y
     case 2:% `, D& z' v7 t) _; _
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
/ M& w& t- h. f6 V) }/ w6 e3 K       break;* a' b! w& e- q* U
    }' t9 l3 I) s3 L  P+ S
   }7 E( V# \. b/ U0 Z4 X# d9 `
   else
* S; ]- e" `) M. C8 {5 Z: Q. ?   {* U9 f7 A& C# m+ P
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.8 H: J- l3 b2 U9 g+ |
    {
( p- W% X$ }6 G9 O' w3 ^9 D5 y     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      ) t* j! N7 e/ U$ w0 U5 D$ F
    } else
; a: @3 x  }$ e; v1 W0 I6 @    {
3 f# z0 W  E7 O     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );* R& K& E2 t# u9 M4 m$ c
    }
7 Z9 l/ `4 g; [! M8 P3 K4 n' W# `' }* x$ r. U
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。0 p, V: D; p3 p5 R: v
0 c( F. A$ _% L4 C, E4 B6 z
自定义多个状态即可实现多种颜色的显示。
0 }% a; [. j3 K. D) ]' t( L! n; f% \
$ a! q3 `; e8 h2 e' e7 H/ `& S2 Y9 ?





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