飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
* w9 D+ z/ ^5 I% ~
9 L- ]0 C8 @& S+ v; v' D+ ]- IMover.h
- z6 a( P0 M/ i' d2 `, q0 c% x6 c6 {. c; q' t4 V! u  J8 `1 M
**************************- p* ^3 ]1 w7 I7 x8 y$ a2 o* P
7 d, X- F$ l# @' L
搜索: BOOL   IsPeaceful()这个函数# }# \* {( Q+ Y6 ]

/ G) y+ g7 Q1 k4 \) `3 ^5 T修改为:
1 F9 d6 u$ o) E- f/ r
2 T% E. K8 y+ p9 z1 v1 H% f/ A- b BOOL   IsPeaceful()
" a8 U7 ^: o/ D1 [% ] { # @) N8 K* E) ~8 [" J2 \, C/ W: z2 z
  if(m_dwBelligerence == BELLI_PEACEFUL)
7 G- Z. L& R5 e5 u   return 1;
& |/ x/ {, b2 Z. R  if(m_dwBelligerence == BELLI_PEACEFUL_R)
/ I3 m4 t# R& z8 }9 |+ R) I, D   return 2;
: C6 J3 A% g  f& c, D; @: N  return 0;
, ]  e6 G8 y! j& Z' `( ]. R
  U# F% C5 U! O }
& ~9 d; [& c8 O" `9 w
: d/ H; [0 f1 h9 m0 S/ r% a3 |其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。1 l$ h) o' v3 P+ M: `  a, X
* u# N/ Z+ e7 E. t5 c
****************************
) a0 a$ l8 ^) g9 T0 p1 j, v
* E# P" V4 y# cMoverRender.cpp
4 k5 ^7 t0 |5 i2 M3 s* {# B% x, J1 i. Q3 }0 p
*****************************) S9 E% F$ t- v! {$ @3 n" L

5 W! S6 P; [. Z& }1 l搜索:if( IsPeaceful() )
) I, M' t- B" I3 |9 s
$ f/ \  z* n5 i/ t修改为:
0 O0 S7 f6 W( n8 V0 d5 x8 F5 E% T5 q" k0 y& C! Y( H) a
   if( IsPeaceful() )
' R2 n2 W" g& U: r   {
/ \5 @, ?7 @5 g; X7 I# g. e; ?  m    switch(IsPeaceful())5 E9 X8 i  ]1 y- e
    {9 ~  h0 x1 U( ?$ N, \$ R0 M
     case 1:; O' s5 K  B0 X' d6 X
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示+ E6 \0 ^- \8 U$ v+ `
       break;6 L3 Y" y! ~/ Y8 Q* I! [0 s+ G4 S
     case 2:+ \+ x  {* G( R4 t6 S" ^; O& {
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示; M$ Z; v- ^' M5 T. ]
       break;- V4 R1 G, [! O. t. K. t
    }
' k' c" X7 C$ @3 R6 H- x) T   }7 b& ~# ?( k1 Y- u2 n1 c
   else* T  b# J) A% @2 z
   {
5 t( t: u, u7 z    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
1 R3 {2 m" C) o    {0 M0 v& D( G3 A) t5 B1 F
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      : Q. H, C: @1 H/ K* @4 O
    } else
* ^! t$ R- t' ?& e    {
) f8 e7 A- v0 b0 u" L     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );) w1 G# {( K: E. A- P8 E8 O4 Y. D
    }
) p: ]8 t$ a2 U, Y) i! A' U& [) w
# A% M- W5 y4 l, R+ Q使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。$ c- u; q9 x. B2 c; }  x
0 N5 e6 Q! L5 F+ \9 R) f
自定义多个状态即可实现多种颜色的显示。
+ H8 t. `  p# M; V& z* j& ^
; w8 i  B! {- W6 L) i: D* q" _) N1 N1 b9 S





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