飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************$ `( i3 l9 }' J# v  J9 \/ Y
' S" J) m+ X: h; `. _, g4 H  t
Mover.h
2 B$ o; k3 n, |- v0 B/ B
& u2 P* k- c8 x" c**************************, ?1 {5 `2 v" C; g3 b( _5 x; ^
! J) c/ k$ c( l* Z
搜索: BOOL   IsPeaceful()这个函数
% q" L* w& |" e: I0 A7 W3 S' G
, ?  h# M% X. ?. o$ V; k修改为:$ L  W  j" g' [! r+ I! r

. C: U7 y3 J) `& n6 ~ BOOL   IsPeaceful()
5 B8 e/ u1 `  W/ g { 8 D) J6 a: G$ a7 e0 K  o
  if(m_dwBelligerence == BELLI_PEACEFUL)
9 M' t" v- R4 a   return 1; $ M1 U# j$ c7 f1 r8 c1 O
  if(m_dwBelligerence == BELLI_PEACEFUL_R)% F% Q' j# e( a' W' c, d
   return 2;
9 {+ h; D% L& M! t5 {4 Y# c  return 0;
9 {* j6 i$ h  I, j' p& G1 {0 u' X! m( ?% g6 U
}
; V) Y& }, m6 {" ^5 z9 k0 {% B/ F6 w6 n: a* W( F/ a  a
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。' n9 D" o8 C) @( }
+ T/ c: m2 \( ^9 T$ Q+ o! H4 e
****************************3 \* Y1 I1 M4 s/ U$ e
% v0 r  _3 H+ w! b
MoverRender.cpp
+ k- J4 U. U1 q) q2 F* w# ^9 d
- V+ h& y% v3 L$ E0 A) p. Y! L*****************************
/ N  O& Z3 C3 ?, o/ m: r( y3 K
2 c# o& }! q. v- h- s1 {2 X" Y搜索:if( IsPeaceful() )2 d  d8 ]' {! o2 U

+ d' _! Q5 O2 n# D9 Y/ n修改为:/ _' b" U- D' K+ e# b7 ^
' i+ \0 w; [; b) ^/ q7 a
   if( IsPeaceful() )
' a; _! l8 R# o% O7 M5 L; D, O+ @   {# g8 A, L! z9 O. H. z7 _2 r' _
    switch(IsPeaceful())
' i% S& U3 B) n. N    {
) \8 F+ B7 `* B0 K, _: E6 R     case 1:
2 J# [0 K; k" s* H% B       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
3 B7 A; c5 q5 i9 f  B       break;
# [! ^2 J: C6 b# s4 \     case 2:+ h& J( M# o# G5 |5 z! a8 x  ]
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
. q# L  Z, [3 Y2 q% x8 \       break;1 ^7 ?+ a5 R+ {; f9 {
    }: e0 v7 e* p8 ]$ U
   }0 n4 w8 \6 p" a( e7 A
   else
* h+ i+ |$ f; X$ L0 x' X   {
/ k" L; u4 I- x3 N) H4 l    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
  e5 {5 Y8 @8 i1 j    {
3 S1 h6 X: J9 L( ?( [, U     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      # m3 n. C( s5 B- ^; o
    } else
1 m% l2 y0 l3 W5 y/ H' G  F! I3 V    {
; V6 \% S9 {' ^1 b( X     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );+ q5 O, G5 t. T1 f
    }* b7 T: E) U0 w
8 y1 q6 c, o8 `7 _: Z. R# c: k4 f
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
: V# ^4 k. I3 ^, d' [- }5 p
3 Y6 ~8 M* v8 U) h2 k' G; B& Y3 Y自定义多个状态即可实现多种颜色的显示。* o. J! a) ^: g  o" t

0 C: G( V: I$ J& a3 o5 S
" [4 H- D3 R  g9 x7 U$ [




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