飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
6 i- r( V" F. ]' C5 b
4 ^5 G) {) s) }# B# u) |Mover.h/ q" t. W, ~- B( J* ?8 F; {

4 l1 `! {2 Q" q! X. Q5 P1 K& O**************************$ ]$ E. {; V; [4 m
8 H0 C# ?4 c+ U9 M' ?# o
搜索: BOOL   IsPeaceful()这个函数
/ E) f# ^$ c% j. e! S3 b2 N$ D
* s1 A+ K( `6 P" q修改为:( T& r: ]8 [5 j: d  t

7 G. X& d- ?! ]8 b BOOL   IsPeaceful()
$ t* ]) \- K0 A. A$ \ {
- O4 k& S) E9 B! S+ ~+ c) E0 G  if(m_dwBelligerence == BELLI_PEACEFUL)  M' a$ ^7 T" f  X0 J. P
   return 1; : |) e7 p& i4 \" c. \) H3 i# Q
  if(m_dwBelligerence == BELLI_PEACEFUL_R)
5 ^/ m5 V% o. Y: y& \   return 2;5 V6 f! ]( j4 [' I( z
  return 0;
; `+ e; d- o" X4 g$ U+ D1 Q$ C
3 ?5 I" D# [9 a }' [* w7 u& r* ~: @4 F+ b( I
8 r; b! I& h  W0 }
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
' |. u4 K. g/ r! F  f3 ^8 M% @' z- o+ N
****************************
4 _; V& E' ^$ ?$ q: h2 M
: [$ j; W, e$ oMoverRender.cpp
) L$ X8 J* I4 V# p' X* _  y* g# y) z9 C; |* D8 k1 M
*****************************3 |" _% w9 @1 f; w

2 G0 O8 I- U8 F0 P搜索:if( IsPeaceful() )8 [4 G. ~- u! r% B/ ]
' T  \8 a2 [7 ]. c- U% h
修改为:7 F1 G* @7 `6 E' v! V9 h
/ t  w- G+ T' d, {1 a
   if( IsPeaceful() )
: i! ]  a5 d/ @* I2 _/ a$ }   {
7 j% S. _* Y/ y! J8 V: o- d& a3 D    switch(IsPeaceful())
+ x# \# C1 }$ T, S5 T+ a: O  }    {
( i6 v( w; `& A     case 1:( [% p# u# a* w4 h- [
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示8 ^0 t$ f" T9 C
       break;  s# t4 P" ~( Q3 O! r
     case 2:
3 e6 d: `; Q7 a7 V# f! E* E1 [       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示3 N! p4 l% ~# ~" H5 }
       break;
  X* X" K5 ^  |& r+ u+ O) e: p    }: v# ^8 x8 i; l# i! y$ O1 }3 Z8 w" J
   }
( v6 y+ e5 }; P+ R" a( x   else
. S4 S4 q  l5 `" l+ @; W* d- K* ~   {) H) R# W) z6 S% p7 O
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.8 M" `" D2 D3 v
    {5 R; }, g. F/ v( w; ?- r; R
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
' O2 x( \+ J2 B    } else - O4 @6 D; ?" }7 d" }
    {
/ Z$ h6 G; e* g3 L5 n6 G5 [     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );1 a) x# P9 j0 |+ y1 ~+ o
    }) n3 L! v. `* n, D
9 y$ h/ f. r3 s' S% `8 Y; P; X
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。7 i+ W6 `6 R$ s4 X# B1 `4 p3 E
) x7 T5 i% Q0 E6 t4 I
自定义多个状态即可实现多种颜色的显示。
* D. p. E0 _& I+ v4 ?; j, Y0 {! `9 R" ^  p/ A, Y# W2 i, C

2 f, K) V: n( G2 p* [3 x: J( N3 V




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