飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************3 d7 P' y: c7 T( k9 R
4 O; }; O) N: ?- A( m; ^
Mover.h
6 h) m0 |3 t- j1 ^# p' i1 Q! _6 Z/ _% U; ?( J5 [. i# M% t
**************************
3 M% ?4 p7 [3 S: D; Q& O4 p: H- m7 r* o
搜索: BOOL   IsPeaceful()这个函数3 j: B8 J2 G; S/ d& t: U0 ]
: K+ O( s+ L" L/ p6 _5 E) s
修改为:
# G3 K9 n- u$ A* s- P& d/ _, i' Y, `
BOOL   IsPeaceful()
; n, s4 |) B% H) k; p {
  ]% k, ?+ D. i  if(m_dwBelligerence == BELLI_PEACEFUL)% v9 t" Q2 P7 N$ E, ~' c8 V0 m7 t+ Y
   return 1;
/ M+ |" H+ }9 {! Z3 \  if(m_dwBelligerence == BELLI_PEACEFUL_R)
& m" d2 k; p7 H. @" ~- q! @   return 2;1 A4 N7 |  u( l" I9 u3 `
  return 0;
# l- y; j  L* O7 |; a7 ~
  Y- b, l- s, |6 C$ d& x* J* S; X }
- q7 m7 b( e4 h
: v# P3 I7 k) A2 p; T其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。2 E1 ]  X: @" @
) B0 A5 K, {4 V: }1 O) k( E
****************************
7 U5 D8 }. z: S) w( q, J
+ ~$ y3 h$ D! A, s; I6 FMoverRender.cpp& u9 z0 O  u; ^4 l) h+ I8 O
* Z8 W4 b& A! V4 G. B( f& ]: w
*****************************. F* v7 V5 w& q) S. z

$ ^5 E: z# l1 L0 u: f  r; ]搜索:if( IsPeaceful() )
1 z# g3 M# ^2 I8 ^  M& n9 V( a8 I' x9 a
) o+ j4 Y6 ~& V" \& h1 G修改为:
  l; g- O5 E# [' l, ]& e* \1 c; x" _6 I" t
   if( IsPeaceful() )
4 I8 i/ B/ s) N+ t   {6 K  E# N$ c  v/ F! t6 H
    switch(IsPeaceful())
' V/ J! u% F4 o# G/ Y/ ?3 [    {
# _2 d8 h3 F  x# X2 N/ c+ E     case 1:5 P6 D, C4 I% E
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
+ C' [0 N3 e, r3 V- f0 s9 \       break;% {1 }0 |- c6 `" x
     case 2:
) V2 S& H- S9 |/ d       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示) H0 v5 s) E5 @! l  [
       break;
, Q, |0 e: E0 t5 F. I    }: q" F  d5 {. k4 I
   }# R0 t8 }" a' c2 D: x- N4 U
   else
' {: m; Z% v6 b# J4 n7 M: r" V8 R   {8 B* I( a1 ]: {- n4 z2 Q
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.- l; R4 @9 G# c' {/ t& }
    {
# C9 S, l0 L, o( _# j4 J! {# S, Z     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      7 e; `$ Z3 Y( E& F  M" d4 Y: M
    } else : L# K8 D4 D0 ^" i3 u
    {
4 |- K9 [7 E5 o1 p4 v4 u     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );+ c5 ^1 T5 b$ i9 u0 z
    }2 B. Z: ^2 M) B
. _  s, }5 R- X0 H# u5 d
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
9 G8 g. H% j2 ~. T+ @) o# O- ?7 d2 ^2 f3 G. x
自定义多个状态即可实现多种颜色的显示。
! _' |8 c2 Z6 J* _$ u7 |+ U; Y1 g* q$ f! j. ~0 {2 ?, Z( n, q
9 G5 T3 {/ _$ s3 i6 [8 A5 n* r





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