飞飞世界论坛

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

给npc名字换个颜色

[复制链接]

197

主题

203

帖子

1088

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1088
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:22:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
**************************
7 o) O& R" V: O) s( G) V+ ]& u: R+ m$ H( N# S' h
Mover.h
' i7 x3 y) i0 M/ E" J" x/ j' J3 G- J
**************************
" e% ?) [% Z  K# d$ p0 i
" M* {- V3 [+ C搜索: BOOL   IsPeaceful()这个函数4 G5 T6 J8 g$ A' D
' Z) R- s4 ?4 @5 R( J4 N& u" p
修改为:
2 M0 f, h/ \, D8 Y& O5 h
( b+ S6 |4 R5 B; B7 D6 U/ e BOOL   IsPeaceful()
$ M/ r& }, e9 T; S& O { ! R0 F( B$ m( N, g, d# J) O
  if(m_dwBelligerence == BELLI_PEACEFUL)
, ], \) E9 R1 }" y) z# s$ p   return 1; 0 t/ p$ n. p* w; V& C% r# n
  if(m_dwBelligerence == BELLI_PEACEFUL_R)2 k6 k1 r0 f/ K  U, E
   return 2;
- ?5 h5 l9 N$ n3 ?2 q  return 0;
) x3 `4 z0 _2 m( i1 _0 k5 i4 D' |9 Y+ `; L+ ?  u
}0 U1 i. W: s: l6 ~

3 X+ F# j1 K% c, u2 G+ {" u其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
5 @6 L0 G& X9 b  A! P9 S* M- I
4 T2 h- b7 ?  o' U- I. H* T****************************
, r; g/ M9 {/ r) i/ [% Y% W& U* R* d, `
MoverRender.cpp
) r$ X: ?7 k! i
1 ~1 V9 W( E5 _& Y9 F4 T: [*****************************
# W# [8 p( `# k' A% b! e% T8 L  |  U
搜索:if( IsPeaceful() ); I6 i% P, v1 W  k7 }& \6 r' d
% q% I3 s( L; }  z2 [+ h
修改为:3 k/ y# ]+ T  B9 j
" w2 h6 O- A: V
   if( IsPeaceful() )
& T- u# x# ~8 _4 [  F3 R   {5 D+ A. f+ w3 @1 ~3 E
    switch(IsPeaceful())* A& I, G5 b- ^# X1 K; N6 ~! }
    {
" b+ Z& P5 U4 E+ Y. s0 a! ?     case 1:! J" l/ j' E! p0 G- N% \, R# l
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
  Z) o9 c; _* b* m       break;
% \* j" J) R! A5 O     case 2:  ?" [" z9 u9 Z, n- L
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
% ?0 _1 m& K, ?9 ~4 V       break;# ]3 j) e5 ^4 c4 Q3 h
    }( @3 k2 `$ U' `  Z: ^/ E
   }1 j3 q( X, t5 @2 F5 l' l! L
   else! o/ Q% G. \; n. j+ |
   {
9 ~/ S" w2 g. K! M' N$ c    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
. C$ k% q1 ^9 l% D: ?    {" N5 e2 j7 G$ X0 Q
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
" t. t: E$ z# r) n1 J- r+ W- i    } else
" B. [$ T0 d7 v8 f* V    {
1 z3 g2 r/ o% d) L, p, L% c- ]$ N     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
2 |& g- a) Q  b1 G& B    }
) S* c$ g- f  x/ `( t1 D7 t
3 y* B9 f7 ^+ u& t! V0 N使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。$ r8 s5 p& I- m6 O3 q$ p$ w

4 \8 g! b1 R/ g自定义多个状态即可实现多种颜色的显示。! U  H2 F- D- V  r; [6 {! [
" s1 b& T4 y0 \4 W' t4 D- ~$ `: e! a  B

* @% F1 o" x8 n; K4 L; D' V# F
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-23 11:04 , Processed in 0.064708 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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