飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
) _5 h" b% k* U% s" v
$ l9 `7 K. y: X3 Z  oMover.h3 M$ D% G/ G% `( |" N, h" {3 P" n
$ u$ y) Y' D% K; U' K, n% f
**************************7 t8 ]( u1 A/ K& B( l" o
* {3 d7 @2 w4 Z8 G1 i
搜索: BOOL   IsPeaceful()这个函数
1 J' s3 M( z% X8 D- ~  g6 b! s( M* k3 D2 U8 y! }7 I7 w
修改为:" Y+ h) @0 D) I% l
. g8 B! Y- A, `7 j
BOOL   IsPeaceful()
% b% J* \4 L0 b. R2 \' T; r( D0 g { . ^  q# j3 V% A) Z0 A: @( W
  if(m_dwBelligerence == BELLI_PEACEFUL)
+ l: x5 G3 f" v" F& T2 n6 e   return 1;
; n( ^8 ~: U" M: Z: Y  if(m_dwBelligerence == BELLI_PEACEFUL_R)
7 Q1 k; r* l& J: d   return 2;
# z% {2 f( y% L. c( K; s  return 0;9 Z" W8 a( j. F% R, Z9 `& N

) c. H1 a. r1 J+ r5 [ }. w/ N: K# {  L6 ]2 z

: j' M$ J& v2 D! L. ^  n6 g其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。3 t9 d: B- Z& _/ p( Q: q) K" H

$ x( {1 [/ V9 Y) S2 c9 G****************************
. Y9 o1 J2 T  L! s! h- r; i# I2 j' K
MoverRender.cpp" n' v4 n' k. `0 p$ ], Z9 o
/ f  X! E3 ?9 l; z9 }1 `, B
*****************************" J, C; J0 Q, ?# K1 Q
$ S+ S7 m' S* L
搜索:if( IsPeaceful() )5 a1 p* Q3 l6 L# C1 W: Y: M

% Z* i, \) ]4 |. C+ ^修改为:
* Y# e7 j4 m1 f8 e( _8 D
: |) B$ Q! u0 ~+ a2 ~# h   if( IsPeaceful() )
7 K* ^2 ?" ~6 F9 J+ a/ F- n   {
# M8 E/ G1 U1 U: p' }3 J0 @    switch(IsPeaceful())$ ?. n8 s8 Z5 _7 [" J5 p1 [
    {
; w$ H8 q2 t) K' n) w; |) A     case 1:
3 h9 P3 K" p( h2 o       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
# t$ e8 l, I  h2 f) c8 B       break;5 p. Y" h! M$ H5 |
     case 2:/ K+ e* r3 s  P4 v# d
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示: C. a# {' @( C, Z4 Z& e! O2 U
       break;
$ d2 y# s0 b# G) _    }9 v( {' w# N1 P) j% S+ D8 Q' b
   }0 n5 k5 J( z) u: m$ v
   else
/ I8 p6 `4 F' ^6 J8 i) |5 A   {
% l; s( j, B" n% [& [    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.$ a/ \' A; Q6 b, ^2 A
    {
3 v0 L% r3 o# J7 h* O* w6 q/ O9 `     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      # ?, G6 H2 W) {" y3 a; T, [! `0 U
    } else
1 K4 m$ u& Y9 _! D/ ], k    {
7 l: g8 B8 e0 H- U     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );$ k' C( [: |$ Q! F0 |; t; i
    }
5 p- b( p) s7 c5 D# W7 L& V7 a  K" ]! E6 S! s+ J
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。1 p8 K* S1 [3 x6 d

2 z- }; T# m& r7 ?7 e% v; e# Q自定义多个状态即可实现多种颜色的显示。
, H% n- c! C! x: ?/ q5 @& R$ g: t. w, |

4 U  `2 S! ]1 u1 H6 S* V6 M: @




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