飞飞世界论坛

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

给npc名字换个颜色

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:22:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
**************************
# k3 U4 }) T; X7 w+ L7 k' ^5 U4 b- o2 h+ P
Mover.h
8 }) b: d' r5 B% ?
5 t1 m# W7 k% S. H**************************/ ^. _8 ]- P. a

1 C- h" ^3 x# v3 f# u# v" B搜索: BOOL   IsPeaceful()这个函数0 ?/ U* d* o* R9 p2 e# c$ j6 j

; H: p+ R1 K8 g/ u" h4 M5 O7 c; F修改为:
' f; t) C5 B: b& G& c3 d! }3 d  F! V: q- M# D' b
BOOL   IsPeaceful() 9 n+ [6 G/ P' V- W
{ 0 @; g$ p5 v9 X" c0 |# R( ?
  if(m_dwBelligerence == BELLI_PEACEFUL)8 R8 Q% C2 g/ z5 T
   return 1;
! u" h( k- [! r, V: C" c  if(m_dwBelligerence == BELLI_PEACEFUL_R)
" s  E. v5 |( L   return 2;  i6 [( r: b) F  C; ~7 R; b) B
  return 0;
1 c3 K$ a1 ]3 p8 r4 g* v
0 d) L# K1 H! ?1 @% M; D# c }# r- ]. B( @$ a# O, D% @  j

* S# G  [( V6 I' g其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
1 d( |8 g3 w- M& i: W# U4 t9 u$ l: j: o$ d9 `
****************************  R- V3 v) _! @  E( W7 ~8 T
7 @0 C8 \# K+ N: b7 p3 h. Y' @' }, S  {
MoverRender.cpp, \  m# X" L- Q8 g1 y, e+ y

5 {4 b. k5 t6 F: }/ H*****************************
# `) k$ p/ W' n4 Q/ K6 R. X- z+ O6 C3 Q  W  y3 f# l) z
搜索:if( IsPeaceful() )
& G( u  ]: ~6 ^/ a$ p7 @5 k9 I' A" b, i. j9 d3 U! \7 V
修改为:
% ?  s' P% i) v+ e7 P+ P5 ~9 {2 z' h( Y
% {3 M, q$ K; O$ J; A   if( IsPeaceful() )2 D  ~; g+ w+ a# w
   {9 a/ X# |4 n7 n* e: }5 @
    switch(IsPeaceful()). E1 O" k! N; {  @1 ~) e: g
    {
" A3 D4 m1 p6 \' L$ s. @2 G7 W5 Y) h     case 1:
* E0 `5 L' m  s/ T( F       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
1 J' B$ k5 e: g* [! }. W       break;
! `" F$ d& W+ T. s0 L     case 2:
: @( M' r$ W1 w9 D" g       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示6 {9 U/ J; G7 b5 r
       break;5 v$ R" Z8 a; g3 P; Z- D
    }  A8 X' {+ e/ E0 I* e3 [
   }  Y2 ^' Z0 t( @* _( d9 m6 j( N
   else. n+ Z( P, t/ {0 E2 _
   {
" N9 S- O5 w8 B  P" T2 k    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
# j+ `, U* Q4 S8 y3 Z    {
2 o- ]% P# e# o9 U! W% Y     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      0 M0 W/ Q' H4 V. F5 @
    } else : r- c/ t- Y& A$ k1 i" |1 L/ K5 s
    {: N+ d* C. V$ w" i" V
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
) ^4 ~' h; }8 J) p# ~( p: \    }
: R2 R# {) T9 }7 U1 L' q
5 M5 ^+ w7 P1 m5 R使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
( A* Z4 P) P/ H, q3 _! O8 B! T2 E: U: @) X' R5 m# ?
自定义多个状态即可实现多种颜色的显示。$ `0 U% R) ~8 Z3 h& [+ c

6 d+ i- S# b3 k9 b$ u" l5 B; ^! ^" b8 t4 M( P
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-21 12:08 , Processed in 0.061126 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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