飞飞世界论坛
标题:
给npc名字换个颜色
[打印本页]
作者:
admin
时间:
2016-1-10 03:22
标题:
给npc名字换个颜色
**************************
, _% b5 s. R$ M
( R& N/ u& C" `( @# e' R
Mover.h
$ v+ {3 y: T5 x9 T) K: R& j
! `2 }9 W4 p- i& D4 x* C- P
**************************
" V% ~1 R& B& z# c% f
o) }* l& M5 b. F1 q( c J
搜索: BOOL IsPeaceful()这个函数
9 n+ R& H% x! ?
8 ~, n/ t* t0 Y6 X
修改为:
. G- {/ U* m5 H1 [) C, D- i$ N
6 G3 {5 G" V' f1 w+ Z) A
BOOL IsPeaceful()
) s5 m( n7 e# L- d
{
9 `) n$ h# a6 W( w2 \
if(m_dwBelligerence == BELLI_PEACEFUL)
6 t5 m; L$ I( U$ B- X6 A) s
return 1;
( s; g7 L0 j. e# O* Z N
if(m_dwBelligerence == BELLI_PEACEFUL_R)
4 R( C( G6 j5 \! P4 e0 m ], D% n
return 2;
- W/ n# q0 S- W. F! o# E) @
return 0;
1 O# K5 o* y8 z }0 z, M
4 e2 g. p a, n! d2 i0 G- n/ K
}
2 f. s0 o6 J& Q- k4 T' l8 Z; J
: o8 `: N' D1 l
其中:BELLI_PEACEFUL_R为自定义的npc状态,也可以使用已存在的。
5 C8 \9 Z$ }" V9 g
0 Y0 p6 Y/ G5 f1 V5 {- Y& d$ p
****************************
7 ~" X; V4 x& S e5 i7 V! w; y2 F
' o% q* U4 I7 H
MoverRender.cpp
+ {, k, D! ]+ O! K9 s$ N
8 z6 P) w' h2 H$ W6 H0 D( M" Q
*****************************
/ m# x z# B/ ]5 [; s
' r. }% _- P! c7 Q- U9 k
搜索:if( IsPeaceful() )
$ f! z1 d9 {. @ ^- m% R# }( B
9 S3 H5 C! m, F# R6 F) M
修改为:
8 K3 I, Q$ U" \% E, n' [( H% T' a6 r) L
1 w: ^; ^' O) {, o& @" T7 N* ?) P+ ^6 N
if( IsPeaceful() )
# j6 z2 ^3 d. e; q
{
! v2 A6 M$ X1 Z; ? ^! p
switch(IsPeaceful())
* n" S, B: [+ v4 K9 H
{
8 h4 t5 H& b4 R, q% j
case 1:
- y4 n! i6 R' O' l) Q
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_NPC, szName );//默认的显示
3 ^) j. G/ M5 T" X& k
break;
5 y9 v* A' r3 w" y* M* Z& m
case 2:
K. T& q, N: l; R& U
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );//红色npc名称显示
+ h* _) D" Z1 D/ {9 O
break;
& c7 Z) A4 H) K2 H6 J! @( r8 Q
}
5 ~+ O) s6 x. U* a' V j
}
& Q: w7 q4 d5 G' m) y# t, n- m
else
) K) H, O) Z; L! r, Z; G
{
, S* e# s8 L9 a0 W9 `) M
if( m_bActiveAttack ) // 急傍 阁胶磐绰 濒糊芭赴促.
7 n9 A4 }. K9 j4 i9 }
{
& @' A$ M3 i+ l0 u
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), 0xffff0000, szName );
& `) D# r% N0 x$ t
} else
9 N8 F, c: i1 k+ E9 l7 U
{
+ S3 x( I2 c' S8 o2 J( l
pFont->DrawText( (FLOAT)( point.x ), (FLOAT)( point.y ), COLOR_MONSTER, szName );
8 ]: W4 q1 e; B' M7 ^6 K7 k
}
8 W3 ~6 o% ^& w# O% d) `; k
; @; S6 U6 J2 `' L( [1 A7 Y
使用地图编辑器将npc的状态设置为BELLI_PEACEFUL_R,编译并更新即可。
# S$ N9 ? H: }) |
0 h6 Q" o# d4 n# q8 Z
自定义多个状态即可实现多种颜色的显示。
0 Y. f. N, b) ?+ T1 @
2 z/ U9 q3 H7 o) ^$ Y
; b8 P- t& `8 \5 Z' s, h
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2