飞飞世界论坛

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

给npc名字换个颜色

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:22:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
**************************
( r1 V9 |( {/ F" s- k2 Y5 f
/ \1 u4 M: v! [& r, D+ ZMover.h
+ _6 i6 H- x( j4 @, O5 k' x* U; m0 Y) P2 |$ C! t! f
**************************
8 z0 k3 D/ O- q! J  q/ G& r( O2 E2 X  I5 ?' u& q  p% b# J; ~
搜索: BOOL   IsPeaceful()这个函数
7 y: s& t' H& S; i9 @0 X; L# k/ x- R  @# U# G: w: l
修改为:
. @7 y$ i4 t5 H6 H8 R' n1 H- I; `6 l& L
1 K7 `# [  P; M: S1 ` BOOL   IsPeaceful()
! t4 X1 f7 M1 t) S/ { { ) S6 [) \8 a+ K4 R
  if(m_dwBelligerence == BELLI_PEACEFUL)
% u7 Z* t% M$ j# N. h7 x   return 1;
  J' n. D# D  F) P/ j  if(m_dwBelligerence == BELLI_PEACEFUL_R)
# g! I1 D* Z* f   return 2;
; U4 v' e% v* }/ n$ {0 \- @  return 0;! Y/ H) V! F2 t9 [& v2 @
7 _/ J  N' a( P
}
1 y' H  H1 Z2 V+ J  k. e- d+ }6 m6 W- `$ Y7 `2 H; ?) `
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
; ~; H* c' @" b4 u$ q" a; I* `: ?
****************************
; \% ^- y1 o: V% A3 G( ~4 P& T' o" c* Y% H. u
MoverRender.cpp5 X) s1 w0 }6 k4 i- }9 m0 y6 V
( o' I. l3 F; L4 X0 d! W
*****************************
# z  Q0 N% v, X4 G2 m* M/ c$ b2 R5 j- l/ N) w# @: H
搜索:if( IsPeaceful() )
3 x4 A4 l' e8 Z5 E4 o! z! `
' \) q) ~( }# b* k  o修改为:
; u5 A, a/ B4 w4 ~" V  P/ f, @' y  P; X6 j
   if( IsPeaceful() )
( D3 J. S/ d2 F+ s   {- Q/ `/ w7 W8 I. u1 ^9 X
    switch(IsPeaceful())+ q& N5 `; _3 @$ |0 ?# ?
    {1 w- L& E; K* P" R; f
     case 1:; Q% m" H9 ]" m4 O4 G& G
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示" p. c0 T1 e3 |
       break;3 @+ b/ r4 o  P; X, ]) w+ [& E7 ]. C
     case 2:6 Z+ U( [$ ?  P" ~6 Q& z/ r
       pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
/ M9 O5 |& A* `8 S, b, C4 X5 |       break;  F# a  U$ |! T7 u- c
    }
7 s9 a  R' A- V( I   }
+ G! c8 G! v) A* }7 b/ W1 e( J8 Y5 E   else
3 J! z  o1 M4 G+ ]0 G: G! U; h   {
& y7 ^/ N' |; n% i  A+ J    if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.0 \- V( a$ j5 X  Y
    {4 H1 W6 ?7 t6 {8 U: M1 s
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );      
0 M- g5 l( q; e  H# r* t    } else , g7 |+ Z) s/ A& O- O
    {0 q6 H( g$ r* P4 T% q
     pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );$ m: C/ {' A" v8 ?; b* Y
    }
$ r1 x3 `/ E. J6 G4 D: T/ w& ^9 ^" |9 x6 x& p: o
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。& B" k  {( G7 I1 b

9 c3 X1 D$ p2 P自定义多个状态即可实现多种颜色的显示。
3 M/ X  T4 X3 ~% a
5 D7 J3 ]* y0 }6 r% @9 t
3 y7 U# S2 _- V: ^( `" z
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-9 05:48 , Processed in 0.074173 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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