飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:22
标题: 给npc名字换个颜色
**************************
% @: s% x, G0 x$ a$ }1 F3 L$ N/ ^+ C3 G9 {  i
Mover.h
* ]! f$ `+ H- b# |; ^1 j% ]; t. F
**************************
9 c2 V+ G. k. I3 M. O9 \
4 l- ~3 ^2 h  V- n搜索: BOOL   IsPeaceful()这个函数1 }1 J# H4 i$ s% j& S) |6 S

2 s) ?: E4 R' V: b修改为:
3 n) ?  e" i7 d" J/ N1 o/ e# A4 @+ }% y0 ?
BOOL   IsPeaceful()
( t% g* i5 r$ N  l { 4 Z$ Q$ g* f( R% L
  if(m_dwBelligerence == BELLI_PEACEFUL)
- l+ r& A8 L3 K% b/ M* l   return 1;
! N$ V' b; R# P  if(m_dwBelligerence == BELLI_PEACEFUL_R)/ f7 C) ?. i$ s1 l! A
   return 2;2 t& m+ i% R* x5 g5 ?9 _9 @3 o
  return 0;5 [2 d; K7 _2 t% u: g

0 O# |) @6 B% r5 Q1 {+ E }
8 ]- s: P& e- Z5 N( E4 s8 \0 J9 p4 U
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。- O" A$ }: f% S9 @' S7 s$ r/ B6 T

  f  V- [' F; [! e( C. b  k****************************" f4 \  O0 H* K
+ o* a7 x& o, M& w6 q' p
MoverRender.cpp' o2 W" t. C0 r  W4 f: W

5 |% Y8 d* ?2 F. t  v4 ~& @*****************************# C% Q4 Y" i+ b0 d

3 E2 e0 S5 a( X. G; k$ E5 j7 A搜索:if( IsPeaceful() )# A4 G5 f+ u0 c

- D6 I" k! w. n# L7 x7 }# H修改为:
, o  [; E# U7 Y( n
  c3 V* W- b5 M   if( IsPeaceful() )! S) p* [, E7 B: V
   {
; ]8 K' d) g% d2 [1 B/ n    switch(IsPeaceful())
8 y- O7 ~1 e. G4 O9 e    {; _9 Q# X9 F9 {# J  s) v4 Y
     case 1:6 K8 c2 n: m0 a2 v& u1 ]& g
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示- C# I8 y6 G/ ^$ v' Y: g
       break;
; f0 T1 a! Q, K, W9 K0 U' J     case 2:* J) V& D: l1 s  Q* Q: \" ?
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
; i3 n) o" Q. V+ v       break;$ g2 |/ C  y- [: j& L0 f
    }5 x5 M# |) Z2 L% f* [( L
   }
7 B+ a( e% U7 P3 r   else
1 i* C$ f: V2 U' N. p+ c5 ], T; P   {( Z$ S2 y8 R$ ?. a1 g/ u4 ?; q
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
& @6 ?4 c1 p$ ~" I; {    {
7 A. G8 J- r7 V& o     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      3 o. j% \* e7 H; u2 M; G5 Q% o
    } else : P1 @% E' M! J8 R/ T; P7 _
    {
9 n9 Q: Z' v" O4 b+ j5 x! W     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );4 J# v/ c( _! ?' ~) Z# O) _: S  c) g
    }0 I1 x9 c" o4 b$ p
* L+ j' ~% X' _4 ^3 D$ q+ P4 f
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。1 l3 s6 k, K2 r. k8 A- J" d
4 w+ Y9 {% Z, \- n! Q
自定义多个状态即可实现多种颜色的显示。
* ^6 e' b1 d! P- m7 P2 s' A1 Z

" r$ l# T, k) x( \  r0 ]




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