飞飞世界论坛

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

给npc名字换个颜色

[复制链接]

197

主题

203

帖子

1088

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1088
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:22:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
**************************/ ~' F5 j" k: I+ J  b6 y6 w8 I

! S# D* c) ?/ _- u' KMover.h( d* R3 H7 D: i4 O, _& I1 x; ^( I
- d6 ]2 X8 s. P  L2 a! N0 m
**************************, G! z9 j3 f4 S3 ~: x

  g+ t9 T$ ~' i搜索: BOOL   IsPeaceful()这个函数
6 w2 C! b: k6 F  N+ s( Q3 U) z+ Z; Q) O" ?$ r) p* G0 }1 H
修改为:
. y* l6 c+ W4 n  U+ \0 W' Q
/ r7 d! B6 X; O+ [3 q, a9 y6 F BOOL   IsPeaceful() # H) |* D3 A& v: t. n
{
2 Z2 i8 z3 A% G- l8 N1 w3 f  if(m_dwBelligerence == BELLI_PEACEFUL)4 L8 u/ b3 E$ l6 {4 f
   return 1;
9 F7 J" y9 K% @5 L' D( r  if(m_dwBelligerence == BELLI_PEACEFUL_R)1 o  f- {7 J# D3 ?* J1 Z6 e
   return 2;
% \2 ?$ Q% ~; p8 f0 N  return 0;0 v/ _1 W  s! M/ n3 `
1 z6 o& X" R4 K
}
9 @0 [6 T$ [9 b/ W3 B' g; T
5 P: g6 W5 \: D其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。+ _! O0 Z0 O0 _; F1 y  u8 R

# _2 \! d1 p0 _- X  t0 n, a****************************
, ~2 H( c: P- r7 \/ D9 J0 O' r5 j/ {8 c3 b& d
MoverRender.cpp
! d3 e2 {9 ~9 o' W" s$ _- }
, c& F& E- Q! Z; Q4 q*****************************9 ]$ ~9 _! v/ V. p7 F

* W/ q) @" L" t) J搜索:if( IsPeaceful() )
! Y" S  b2 [9 `5 J) B. r8 N$ y' P
修改为:
7 z7 t; L  r( l7 `0 ^0 x9 h6 M$ [1 t% [  \' W( p$ z5 d+ L6 W  s, t- |* ^
   if( IsPeaceful() )
# a  B( `+ E. k9 Z   {
. z8 ?/ r& m4 _) F9 a/ Z    switch(IsPeaceful())$ b2 |. }9 o' c
    {2 U" ?7 p0 o8 P- V5 _
     case 1:  d# G- o2 @! g) {
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
+ g% A/ X8 B5 M       break;* i5 ~! O* I9 r  ?1 K3 G
     case 2:0 d3 X( O  t+ w6 r- f
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示% o7 n$ V2 t) M4 w
       break;) g  J" K" d  F+ M4 ^5 f( Q: u! `! Y
    }
) f; U; @! u2 Z. z) _1 L- R; O   }
; C9 ]1 o$ @( u, J' G' C9 V+ h   else' g1 j; v1 i+ |
   {$ ~  F* O4 T9 E+ v3 ~! [7 Y
    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
! s; W- q6 L- R7 S    {% K- S! _" o7 U6 i, w4 |7 n3 q
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
$ B" [) K. I% Z9 p$ x7 j    } else
% c- J$ @% D6 o6 A: t, C' e( H    {
' k9 |: T+ B" P7 h     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
! \9 k! I2 w; w- `    }
8 W* G* ~3 F0 s: S) P% M% o% ]$ x, p+ t$ L
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
9 L1 A  h, Y! F3 U+ E  E7 C1 y
自定义多个状态即可实现多种颜色的显示。
, M! P5 f- f& h3 m4 I5 A, [. f. c1 F4 y, i
# @0 ?8 L  m$ N4 f) {
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-23 08:36 , Processed in 0.059572 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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