有人問點解 167鞋 、197鞋點解只差 6數值????. q, D- F2 B3 U+ I$ c( m( i* ]7 g8 V, b' d
冇人識答你.9 r* j9 n: p |/ H9 S2 W) F, P# ]
: r) W$ E( U" [" \7 g9 \: f( l不如問點解 200 AC 同 210 AC 相差攻擊力不是應該是10 .
9 F X8 k1 B0 J4 q! J" h呢個係 背後最終數數冇任何原因. ; t6 c" ^( _8 v- \7 x/ c
- N( y- O. m/ S8 K4 F9 u" ]( s
請自行轉英% |/ U/ G: p7 d$ c- d
+ _. K7 L" n& S1 S; Y5 l% R) i) a$ }' F' d' \; i
0 h' m" {* e8 I! N
template<class T1, class T2, class T3> 3 J& w* u5 n" s3 |
int TCharList<T1, T2, T3>::CalcMovePower()
0 x; {& l# x2 w2 N- @{ // 이동력 계산
& ^& A( @* r/ r# o$ ~ if (dwDontMove > 0) return 0; // 이동불가 상태인 경우
# |* i. x# D! s6 [. s8 ~$ n9 b if (nCurrentAction == 1) return 0; // 앉아 있는 경우 8 _7 y/ q* X; @9 q: h
// 극악 NK인 경우 처리
4 F1 {- `' w4 i5 r const int nNation = MapInfo[MapNumber].nation;
& v/ v3 m4 C' f- ~8 P- v if (GetNK(nNation) >= 100) return 10; & @8 `4 T& o, w3 R* M& c
if (GetNK(nNation) >= 10) return 25; 8 d+ E% D8 S$ A1 r' Q
// 이동 속도 구하기 : p$ o: y- T: C& H
int nMove = GetMovePower(HorseNo), nPlus = 0, nMinus = 0; 4 Y d( D7 c! E) u. x, S
// 말을 타고 있는지 여부 ) c1 C! r: T' C" F9 s m
const bool bHorse = (HorseNo <= 0) ? false:true; % s J& \/ ` ~% ~) _. p
// 말을 탄 경우는 이동치에 관한 전투스킬, 마법 무시
. x5 c, j& B* e/ ?4 n# m if (!bHorse) " n4 \, L# G7 \" O/ T: [
{ //< CSD-020710
# ~9 [* N9 `8 l4 \, l switch (GetPassiveCombat())
9 g6 }$ K9 S( I _1 d2 L6 @ { 7 B W- B) Y1 c9 @- I
case GUST: nPlus = GetCombatValue(GUST); break; 2 f, {5 {. o5 z+ R) T
} 8 Q, y) C( }* L
; P4 A$ P0 Q% g" f6 r+ c CorrectMovePlus(nMove, nPlus); ' X5 r8 |5 h+ L; @1 I' f" q7 F
// 레어에 대한 보정 : U. V5 o+ {( ? F5 _ ]0 X" j: n
nMove += (RareEM.GetStaticRareSpeed(StaticRare)>>1); " L+ J$ q H) l6 Z' B$ g
nMove += RareEM.GetDynamicRareValue(FITEM_SPEED_UP, DynamicRare);
1 K3 { q6 n6 x K } //> CSD-020710 - }6 G* u5 X& u5 d' x& I
* @, D4 ~0 G+ F' y/ c if (IsFreeze()) : l; H& _% n8 w/ s1 D( a
{ //< CSD-021024 : 얼림 상태인 경우라면
q* i) V) H+ M% k nMinus = 50; S; G% Q+ `7 l
} //> CSD-021024
/ W q& z$ B4 D7 C! D: b4 ?4 J 7 v, |3 r5 e- k* @2 ]
CorrectMoveMinus(nMove, nMinus); 4 ^% O, [& X/ L0 D& B# \" @ F
// 배고픔 수치가 0거나 유령인 경우 움직임은 1/2로 줄어듬 ' y( w7 {. p; U2 d' M# j; j
return (IsHungry()) ? (nMove>>1):nMove;
. H- b( u4 h$ S8 b, F0 J+ @}
0 p+ f* [! Z" s2 A. @- x, B" O. i$ h1 |! l/ J8 t, u' P
) j! U) A& x" I' J6 V
int CCharInfo::GetMovePower(BYTE nType) const
% ~& l/ I3 c4 _! a8 W8 \2 c{ // 檜翕溘 掘晦
' I! @0 k- X1 F; x) [$ ]! L a const int nMax = __min(MoveP, 310);: n$ h) R( G, m
if (IsNpc()) return nMax;
( j' n- _5 c$ K4 j, D4 {
( o3 j" W$ {, p& W int nBase = 0, nMove = 50;
) D9 J% r# R3 s9 v4 a. y7 E* R // 嬴檜蠱曖 檜翕溘 陛雖堅 螃晦9 \( b# Y/ z& L
CItem* pItem = ::ItemUnit(equip[WT_SHOES]);3 _& ]0 _7 J$ C
o* F; n) Y- O. z0 { //2018-04-30 天使羽翼移動 (修正版). F5 c, x3 W+ Y7 f& C
short int mantle = equip[ WT_NECK].item_no;8 o' N( v$ V, |. o8 f6 S: o
short int nMantlePower = 0;
' C5 ^& B2 v% q8 @. N- ^. a switch ( mantle )
( [) u! Z/ X. N9 j {8 n8 K6 |. ~# G {* ^
case 8388: nMantlePower = 60; break; // 天使羽翼5 v# I6 Z, w8 P# ^
case 8473: nMantlePower = 60; break; // 熾天使之翼! E) W5 z q n3 T
case 8474: nMantlePower = 60; break; // 墜天使之翼
# T2 T x: i+ z4 ~, T }
/ D8 X6 Q8 _% S6 C* C2 S4 x p% w4 [
# v6 `4 T7 l" e: b( w5 I+ t if (pItem != NULL)( t# \. e% \9 {4 g, X4 P
{ : r/ @' e0 i5 Q
switch (nType)
% S3 n) F( \) X2 p: r {
! E- C& J6 z- U+ g. d+ e: E$ f case HORSE:5 q8 B$ Q+ T+ L9 k2 a: T
{
2 r5 Y' C! J; Q( n$ S nBase = __max(8*((nMax - 10)/30), 0);9 X: G7 g+ c1 M. Y5 \9 l9 a
nMove += (pItem->GetDefense_power() + nBase)*0.3;
( O3 m; | C+ o9 J+ `+ S* B4 S4 N break;- I" C9 z( R2 \
}3 |. F. z. j: }; _, I3 k7 P5 q0 G
case BULL:
4 H0 ]* A t4 i+ L; l% _: C {
$ E/ ^' s; \2 Y nBase = __max(9*((nMax - 10)/30), 0);
4 y) J6 U: y8 P% |$ X4 | nMove += (pItem->GetDefense_power() + nBase)*0.3;
% K# {3 j2 u9 q% G0 @ break;7 ^. K' N6 a9 ]2 m6 J5 Y; \+ I3 c6 N
}1 C/ Q; }- `6 j
case PHANTOM:8 J5 W3 S' x2 l7 r Q
{$ h, {9 t, \. C' v B
nBase = __max(10*((nMax - 10)/30), 0);
) ]: M+ g1 n. c8 S5 X nMove += (pItem->GetDefense_power() + nBase)*0.3;
% p8 D2 U |9 r9 C break;" Y, e( u0 _, Z) z$ z' g- I
}. ]! D0 h$ M, C% x8 E8 [' }
case 4:
! ]5 { Q, w" g2 b2 U$ k: B {
6 J1 R6 b; z- J1 b" L" v6 ^3 k nBase = __max(8*((nMax - 10)/30), 0);$ I3 h& H( {( D
nMove += (pItem->GetDefense_power() + nBase)*0.3;
0 y& X! }/ F+ h3 G- {) g break;
0 h) F8 k. M4 i2 `( ~ }
9 u, N0 ~( p% N# u case 5:
: t8 A3 |4 N1 w- P$ p {
" J! P& X( d! l) Y- S( H( G nBase = __max(8*((nMax - 10)/30), 0);& ?' e' a' I8 k8 T9 k+ [
nMove += (pItem->GetDefense_power() + nBase)*0.3;
' i" A. |6 V3 D$ b8 r4 \5 f5 @ break;
* {1 U4 B" {5 R; k- e) U }
4 o9 @) q/ a" ]# D default:# Z; p) N9 A/ `' F2 _8 ?
{" K9 {5 t, L& c8 S3 _
nMove += ( pItem->GetDefense_power() + nMantlePower )*0.3;+ f) C/ A( R z" i [
break;% i9 Q6 G, J5 \2 v
}
. a8 P" e2 A3 I6 h5 p# w$ q* c4 ?6 w }$ i5 m$ O0 @# l9 _4 ~
}
: x4 x" o: { v7 X' ]4 }
% L5 W, s- ~) x) B+ {. C return nMove;6 A& e" b( @+ m3 N' ?" Y
}
& Z- u, z8 s" l0 h0 [1 Z/ {) T- ^2 g6 e' H
void CMagicState::CorrectMovePlus(int& rMove, int nPlus) const' L+ S: g7 T9 k( Z, Y
{ //< CSD-020710, k8 C5 ?4 n& r& ?9 j8 U
const int nCorrent = rMove;
0 s! V# ^" [/ f if (speedUp.GetRatio() > nPlus)' Z% N3 N$ o. j0 u' c8 P- {* P
{
* B* k; E( D! ~3 D: L rMove += speedUp.Convert(nCorrent);2 F1 V+ {* f) B' r; w
}; i! J" R/ |) y1 |7 P6 j
else
! Z x% Z7 V3 D' A1 ^ {
: W6 V) O" S5 t% I. g+ z/ ? rMove += (nCorrent*nPlus/100);
" ?/ H* }/ M/ Y! W- I5 q }
! q0 ]5 @# l/ s: p- j}
; E) Q( _! v3 n- p' W/ `! d7 G' k0 [: q
9 \! z1 n4 ?' L x, Ihttp://read.pudn.com/downloads19 ... rs/CharList.h__.htm* G" e R& U8 e: N9 Z
9 T! u( u; C5 J2 t% C* |
7 X( H$ P$ S+ _! Q' M |
|