飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************; D# k, r7 x+ U& q7 |9 Y, o  l

. x& A' \8 j+ q8 W% e: o* G0 zMover.h9 s5 e/ R& u* O  ^1 Y+ [* w1 O
6 ]5 G% Q: X% n. ]
**************************
* D2 @5 }* v, N" M+ i. K& r
1 P4 c% `' i1 C9 ?7 J- O搜索: BOOL   IsPeaceful()这个函数
2 Q( v! k: s8 W; P* Q, C5 c- O  f: R) I* `1 s# F) l- J+ u
修改为:+ Z1 J/ R6 i) o. u+ e7 o

" K6 Q$ ~: o* m# }7 d BOOL   IsPeaceful()
! _: B9 C& x6 e! x7 b) f {
% i5 W+ F6 T" d- e# ]" p  if(m_dwBelligerence == BELLI_PEACEFUL)
1 g* _4 @+ P$ H1 N; s* q8 Y  f   return 1;
- Z. Z8 o7 v0 G; C5 @9 C, k  if(m_dwBelligerence == BELLI_PEACEFUL_R)
& @8 `+ ?1 `& j' c* V0 F   return 2;& y3 ?" `! v9 z/ B2 L
  return 0;
/ V; N; h8 A6 c& K+ H& E4 @
! n3 K7 q) c4 N$ p$ T0 E( T }$ K; h/ N* s* g4 b3 Z/ w" b- z

. K6 s9 n! U8 v7 K. o& [其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
2 T$ D2 e8 p) p- G5 D% z& b- X# U6 ^$ l2 \
****************************( j/ P! l7 k# h$ u  t

" A6 D  O- o& I6 c5 VMoverRender.cpp' `2 k6 O1 z- b; P. r3 \

7 r& `5 t6 S. \+ F3 a6 I- i4 e, p9 d*****************************
3 X. D: \8 O4 t, z: y5 e8 p0 m1 v) U) A  j
搜索:if( IsPeaceful() )) b8 Y" {" o! v* D5 [; b; P/ d

9 t* N4 X( ^( Y0 r, j3 |修改为:
' n6 x5 M1 }+ Z; Y3 l/ n. c- p) C! [8 C5 A) O
   if( IsPeaceful() )
+ m# D4 ?3 g% c7 d! \* k   {) A" O/ ^$ `& z0 E2 U& L$ _9 F2 t
    switch(IsPeaceful())/ T, U8 y# h) p4 f, G' y
    {5 _" v+ q2 n' u5 |2 ^6 l
     case 1:
* V" F; O' B& W7 F+ Z7 k% [( N       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
1 V- S8 v3 N: o* `       break;# ]3 P9 N# Q  x; [8 B
     case 2:% n7 @  ]: h4 Q4 C5 L4 R
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
  o+ k* e2 ?  B& Q  {6 E6 n. j       break;, C; e- j' W7 o. H7 a
    }" d& O$ O1 [2 M0 b$ y# O
   }
% ^( {6 G% ~6 _  x- a   else
' D0 m' v1 m1 F- `2 _. @   {
7 h: r7 _0 D3 `/ U0 X) e    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
; S! x) u8 y8 Z* o: H- J    {
+ {2 ]& B# c3 _: w4 ~     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      ' r& B+ P" f" j
    } else & w3 O: U# G7 k: L
    {; ~% x$ Y1 C6 ^' V$ y5 t
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );2 S4 j: V2 G0 `& A  |+ O
    }8 p$ P' h3 ?- ]
/ i7 f) w* a: m/ S9 a
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。' G7 X4 h+ t; z% ]  Q
$ {$ p3 V; e" }5 @
自定义多个状态即可实现多种颜色的显示。
6 n0 E# \/ k: \% |+ N$ k# B- u
1 x) E  O! |, N$ i2 X' |+ n
( A# }" a- @7 `




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