飞飞世界论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 12633|回复: 0
打印 上一主题 下一主题

给npc名字换个颜色

[复制链接]

197

主题

203

帖子

1082

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1082
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:22:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
**************************
( c# R+ D$ Z2 F0 c& n  K* M% R- k- J' A
Mover.h
+ \7 |* k, ?& M0 x
5 Z6 ]+ F' E% w9 a  A0 j**************************$ S2 V' P" g- g
6 S4 d4 P5 n7 T: c3 N( G9 U9 O; @$ ]3 n
搜索: BOOL   IsPeaceful()这个函数* N& z8 _' E6 D7 f: B( c' |2 P

8 ~# P5 X7 C2 U, Q. T( n修改为:; s1 ~' S: n6 `7 t% k) i
+ y" N( v8 E5 e7 s
BOOL   IsPeaceful()
8 `2 R& u0 K2 \; W2 M { $ U7 I/ w( O9 [) O
  if(m_dwBelligerence == BELLI_PEACEFUL)
" X- f$ |: [# H( n( c% f" m( I   return 1; 5 [# |" P9 K% _
  if(m_dwBelligerence == BELLI_PEACEFUL_R)( U' |3 M& |1 P5 }, {
   return 2;
; s) g) b: f% N9 D6 i/ i$ ~$ x( r  return 0;3 R. _6 y4 o/ P2 h

! l, f7 X  G" M8 }) s. V }- b7 B5 S( h) }+ ~6 ]$ @  }5 \6 C4 y
* s* n, G" D" j) V! e0 A6 Q; R3 w
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
. t. G5 \3 Q2 P, E! [2 _+ r0 c' H3 J* D7 M" P; w! d4 I6 G
****************************# R( ~9 s) p+ `+ ~( s
2 }4 s3 O" }7 S( @- {  }7 w, _; N* v
MoverRender.cpp
# k7 S1 ~6 `5 r
( K" q2 C3 X2 R" K4 Z*****************************  H7 [" c: u7 l( z( r- |" C) ^

" Y9 h% _/ N  [+ w$ P3 m' f# ~搜索:if( IsPeaceful() )
( a! j8 c3 C7 \2 C# C5 ^/ Z8 E
2 m9 ~! W0 x; `0 |  z  B修改为:
1 r4 Y' ?) n3 {4 _: B3 d0 v* {! f( k$ ^6 ~/ o
   if( IsPeaceful() )
( N3 ~4 X3 [# [& ^- |7 d. X/ E   {
$ ?1 h" A% q/ R& C    switch(IsPeaceful())" f2 B2 h0 N' i! J4 `( T
    {
9 z: }8 E2 e2 \) J( x; E     case 1:. @* _+ K% x& {+ r. R
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
7 \$ E! K) O$ k+ C2 [# v       break;% U; d! u3 G6 p) p0 P/ L8 D
     case 2:
! Z% Z, ^8 ^$ a. V       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示, c1 T# O# \4 d! w
       break;; _) N$ ^' g3 E4 z+ F
    }$ f: k6 t4 \2 A6 N7 F
   }
/ h7 z% p, \) j2 S# ~# g  Y   else
. K; i; a* P4 i; M  Q" w   {9 |% l$ J; `+ d8 x+ U+ u
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.2 o7 [$ Z. |9 ~- r/ ~9 W7 J- `+ t
    {
' I* U2 r$ c( e' q, v     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
4 u3 C( F7 t" t8 J+ ~6 N    } else
1 i' K* w& X* O* Y    {
4 |  b( p, A6 X7 P* B. K2 H! [8 |     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
% A- ^5 L# h/ ?- D1 e4 i- B    }8 |3 Q  q8 ~3 C- U6 b1 q% \
0 [9 @& V1 N0 T+ X& s
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
+ C7 O# A' X& i. s4 }
+ @" K- V& c6 F自定义多个状态即可实现多种颜色的显示。
$ a/ t1 x8 T# j9 n8 F. F+ U! v- c7 s
8 h' c1 c( L* T" [2 m+ _1 G$ a- }- C, n( G$ H  u- [
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|飞飞世界技术论坛  

GMT+8, 2025-11-3 05:28 , Processed in 0.109928 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表