飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
/ ^% F& O7 K6 \: _9 y) `4 F" \! M4 _7 J
Mover.h) w; p0 _  ?5 Y+ c5 I
0 d' z  @3 c) L. U$ ]( q
**************************
" ?* w* P/ P- y' T) |/ A8 W8 j' [  x# D
搜索: BOOL   IsPeaceful()这个函数' l8 p( |6 U4 @7 s2 i

2 R" Z1 g' p% S* p; ^3 l* R! ^7 W修改为:
" A1 {( M4 k0 T( L2 U3 E7 A! d1 m$ w/ e1 i
BOOL   IsPeaceful() ( I3 D9 c, ]2 P8 Q  h
{ ! P* s' G" M! H0 c7 h2 K9 L
  if(m_dwBelligerence == BELLI_PEACEFUL)$ y( R( V4 M. s. u) u
   return 1;
2 T, r& J" F- l7 _  if(m_dwBelligerence == BELLI_PEACEFUL_R)
: A' Q1 |( l8 r1 v7 w- w: c   return 2;4 ]" D! D2 c# J# @) Y" u0 C
  return 0;  Q0 p: Q2 _% H  m& N+ [0 C

9 o9 q% S3 G6 `* B }
, D: r" j- l6 ~; Y8 r( S/ k1 a' J0 n) ^: X& Y/ e
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
5 q# u0 {7 w' c
1 @! F' g. z% G7 P& ^% R4 w***************************** j: `, t7 b* `9 ^7 Z% P" }

& b7 B4 H* ~7 c; M* l% ^MoverRender.cpp
" o, C) v2 ~0 T& ^) i3 T2 l6 r- v  M" f! M7 M
*****************************
' R- i# \3 @- Y! T
/ f3 W" q1 s$ o3 ?, u搜索:if( IsPeaceful() )- F! E" G* h9 ~5 P
3 I, p' N3 n3 d2 r2 E% ~
修改为:! Z% j& |" w2 I+ h+ T7 s

8 {4 Q- \0 Y& }; M8 H   if( IsPeaceful() )
0 j5 g4 F- o! a: @/ G   {
  e3 U+ n9 z  k& ?+ d0 r( U0 G& f6 B    switch(IsPeaceful())
% F/ p0 Q% W) {5 I/ |& h( j    {
& p: _, W1 M7 u1 d7 B     case 1:
+ ^6 e* P' C% u9 ]0 @5 `       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示. I' N4 R0 W+ ^) D) x) a# ?+ T. i
       break;% l% e! s. r' ?" \4 T
     case 2:
/ [9 X( D; e4 ]+ |       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示/ @7 T! e3 u% {
       break;
3 U0 u, \$ A7 T* B5 A/ O    }
! O: D! z6 }. |   }! G) j4 N6 [2 O7 Y/ O
   else
( [/ _; v& m6 }8 e, t6 Y4 l   {8 C2 P$ q$ x/ {0 v# }- f; A- ?
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.: U, _& N3 k; X/ ]
    {! C+ g+ v5 q7 X2 i+ ?
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
( ^. r/ p% n2 f3 ~6 L  Q: S5 d    } else . ~# Q& {1 }1 t  L) k9 q  E% m1 K' [( `% @
    {' R. ^8 n/ l# {5 F) d7 Y/ e- V
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
: _: G, L+ h3 V* d1 K0 \$ j4 _    }2 J; C2 |' `" T6 x% j9 l7 ~3 Y
, z5 U5 v' S6 R% n8 V8 X
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
$ y0 ~$ t8 o. w+ X! }% w. f1 E
/ d8 U" n  E9 T" _; t自定义多个状态即可实现多种颜色的显示。
. h% v2 S# r& r- \. |. ~3 k- `2 R' a

; |7 R7 N  _' N5 @




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