飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
' S! H* {5 U, k
) C; @5 U; b- [6 `2 l8 C/ W& {; mMover.h
  `3 B7 w  X- e  d# w. s  x, l% q$ f1 _: z$ d) f3 a
**************************% V. _5 ]5 {9 l! _# m8 T8 b( e
4 y) k; C5 E, R* D' J6 x( k
搜索: BOOL   IsPeaceful()这个函数
7 u$ O1 D7 b/ T6 U7 T
; I# l( ?8 i0 F* ^修改为:
' \$ m8 {7 i1 p6 H, v+ c9 U! D
' L* G# a& `9 z BOOL   IsPeaceful() + o  }; f2 b5 K0 @6 `0 I
{ * V( p1 R& |4 {. g% a' t
  if(m_dwBelligerence == BELLI_PEACEFUL)" Q) b- P' l7 A$ g
   return 1; ) j; S6 Q6 i; D0 @
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
; D0 g' s+ k' ^% x6 z' |- o2 X   return 2;
( \; P3 }0 X# S9 y+ j  S  return 0;
7 o* |6 n' M) d' H( O  }( e' q7 @& c; n+ v. T% u6 C, v
}0 K) Z! p: h% M8 [2 h& T8 G5 Z& j
3 I. d4 J* D* @
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
. H3 B9 g9 M$ E; B6 |  y' @. a  C
. w$ k3 G# e  g3 t****************************
6 D$ G6 l4 A& ^( v& D
' l, G. X. U& V+ _) l& P8 xMoverRender.cpp
' D4 H/ w) a0 G/ |1 S% e- J. C8 J# M; _' w' C% A6 N$ h8 Q
*****************************
$ X. t3 W5 V1 _- X" o" F3 H: I+ m: e* |7 N
搜索:if( IsPeaceful() )+ @& X/ {. O$ k0 \
& c  y2 g4 \5 J9 T0 _  C
修改为:
, P) @8 A$ ~; \1 R- Z" {( V
% \4 K$ W7 K$ A2 S5 _9 b2 ]   if( IsPeaceful() )1 `- l' c! i" A
   {2 |* U1 q* k) A0 k4 P1 e; U2 P
    switch(IsPeaceful())8 e8 \# o0 i+ u+ L' p: M/ m
    {
4 @& I3 i" L! p6 L. i1 P. k% s- r     case 1:
5 a' v+ I( B1 R1 v+ I, N       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示2 T; z- g: X% T* S
       break;; h% j& C3 q0 B! r* U$ y  j
     case 2:# n5 ^3 {% T1 V* D! }+ x& G
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
! ?" d4 F5 _9 a( j! Z       break;9 g$ V' \) L1 s" n
    }$ _$ J1 b. N: ^
   }
, r2 Z; T9 B; s3 i$ H   else
& `6 {2 k  X- x   {
) b4 f6 _$ i" Y: w; l2 R& X2 a* }    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
3 m8 }" Z# A5 N, E  V4 i) C- e2 R    {
9 T- \7 y5 {7 N0 a& m     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
+ D* z* k& Y+ X; u# K  ]    } else ( x, {: ?4 h$ x1 @2 W$ h: j
    {# s( q% K( b- y; f5 p( d
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
1 `, n% ]) K" L4 p9 }    }
7 r8 a) h* K4 w' j% }" l
1 i, T% B. \1 ^' s0 p  a. w使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。, i$ P3 L+ G+ n' F
: K0 f% E: P; |0 K
自定义多个状态即可实现多种颜色的显示。$ w( \* E1 P' c; u8 T
- ~8 f1 {) C5 T  y8 f
/ ^6 ^. A% e, C





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