飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1090

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1090
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
5 ?3 U9 ^$ A* E+ g
+ j& Z+ x' R3 I/ r/ W" b8 V& SMover.h
1 [9 ?0 Y+ |. ~- k/ D2 I6 c代码:
: @9 c& u2 {' s7 C3 Q找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü: a4 }9 @5 k% T$ f: v

; W$ i7 A1 d3 e/ s下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
0 F6 U! z8 {1 Q6 e4 m5 ~' S
! m, N4 n0 n) L然后你去mover.cpp添加
' ~0 O! w0 x# H
" a3 k* V* T: d# S! i7 H代码:) E2 E4 Q3 j9 g( M7 w  N& m
void CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma ): a4 l2 Q" R, I9 D: ?
{0 @/ q% ~& g! W8 n6 R2 i/ h
#ifdef __WORLDSERVER
! ?. r/ Q; i1 S. N    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó/ L  [7 b) I/ F3 s! X
    MoverProp* pProp = GetProp();
# I+ }& x/ J* `5 X# d    if( pProp )+ {7 a+ V; _9 X+ e( Y% V$ t1 G0 B
    {4 M( [# r  Y4 N- N* ^  T( U
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )- L0 S/ i4 y0 H0 {& D5 D0 \5 K, P
        {3 H1 [8 U! |# w" b& n1 U: {$ b2 B0 f
            AddChangeJob( nJob );- ^$ U& P) X% Q0 H/ Q1 S
        }else{9 R) t, z$ e7 \7 @6 v$ l7 H3 D
            return;! I. O( I9 z  H5 i0 Z; u# S
        }! B; q" l, f  F; H: A# K1 l0 Q
        int nPoint = 0;
: p. o# S2 r5 B, K( ~        if( m_nJob == JOB_MERCENARY )' t: W+ B2 M3 j
            nPoint += 40;
. g- `. T% w  [, c1 e  n% j/ \) K6 w        else if( m_nJob == JOB_ACROBAT )
; U# j, D) _6 J; H, E7 a            nPoint += 50;
- _$ k2 a) m% D+ m( j! g% @        else if( m_nJob == JOB_ASSIST )# Z) |: J/ L  Q8 d: d; D; L2 v
            nPoint += 60;1 c1 c* F, ?1 i5 W& N, o
        else if( m_nJob == JOB_MAGICIAN )
* H. \8 J* I" ?* z8 c0 ^/ x, Q            nPoint += 90;
+ t  F/ F6 y5 c% G# R        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
. d8 h& a8 N2 W            nPoint += 120;: C6 Y* l1 l  L8 `' y+ [3 g) `6 L
        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )6 X# B2 c. H4 F, q2 r
            nPoint += 150;
! b2 H4 w! A6 B$ V        else if( m_nJob ==  JOB_RINGMASTER )
. }- F- c3 x+ c. F0 g            nPoint += 160;5 S5 z( ]1 O+ ?: [$ i9 ^
        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
, F; ~3 ~8 ~$ f            nPoint += 180;3 N9 f0 v* {) ]; s" [( I
        else if( m_nJob ==  JOB_ELEMENTOR )& g3 ]$ t/ C) `5 Z: @
            nPoint += 390;
% }! W' u7 \* a- W: u( {        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
1 ~% l/ h$ M& M1 }# K            nPoint += 120;
( H% a9 `7 }, m- ]# d9 F5 M        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
7 \4 ?& ^+ B. O# q0 N. m            nPoint += 150;+ Y9 r+ f) f: M0 Q. X. u
        else if( nJob ==  JOB_FLORIST_HERO )  A. M2 \, P3 H/ l: n' m7 s
            nPoint += 160;
# m+ s8 }$ e6 I1 |& x        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )+ i2 P8 c8 R0 G. d* [! `
            nPoint += 180;) V: Z+ G  }6 Z' b: Y  v
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )" |6 Q* U; I" I) S+ E
            nPoint += 390;/ X# w1 j& e( P1 Q
( K0 [% ?- R+ P
        AddSkillPoint( nPoint );, a7 f; R  j# r9 [" c
        m_nLevel = nLevel;
. c& R) a% u- ~5 `5 O7 o8 J. j/ r6 V
  R2 R+ b$ V$ ]8 c' M3 v8 ^        SetJobLevel( nLevel, nJob );" n$ q& p! m+ ]/ A9 \9 z4 h/ @
        m_nDeathLevel = nLevel;
4 y3 p, o/ E( f1 v3 @8 l  N- }3 ?( ~#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans+ H; A0 Z- @% \9 |. e! u( ?- r
        if(IsMaster()); g6 D9 s4 ]) F3 j9 i9 d" Y
        {
  m1 n! _5 z' N( W            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
( g, ?: l- X' T! e            if( nLevel > 59 && nLevel < 72 )
( X" ?' t! F; m, z& a                dwTmpSkLevel = 1;
+ X) r1 Y1 ~# w+ c  [4 P            else if( nLevel > 71 && nLevel < 84 )( M8 I# o- u; @8 h0 z1 {
                dwTmpSkLevel = 2;
. O, T( }' t- ^            else if( nLevel > 83 && nLevel < 96 )
5 [" U% z! [( h; h2 Z                dwTmpSkLevel = 3;! m( @1 d7 z$ e8 ~: p
            else if( nLevel > 95 && nLevel < 108 )5 n" w: z8 B" `1 V- a
                dwTmpSkLevel = 4;) L5 D7 D/ `1 T
            else if( nLevel > 107 && nLevel < 120 ): j3 k; V/ |8 G/ T" s7 v
                dwTmpSkLevel = 5;1 L3 {: G- R- @
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) ( `( w& m- f" ]- u' B
            {                ( t5 h: M% p/ _4 M9 }8 J6 S5 r
                LPSKILL lpSkill = &(m_aJobSkill);
/ h# g/ |/ d- z& {% L  U9 U                if( lpSkill && lpSkill->dwSkill != NULL_ID )9 ^7 E$ t$ n+ [: i+ }* V! X0 k% P
                {
/ C# u7 ~; k8 r                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
, h" w2 ?; T8 I  L6 e9 |; w                    if( pSkillProp == NULL )" P+ U, R$ \% p4 D+ I; m
                        continue;
# @1 z1 s( B- {3 _7 }; w                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
. p, ~- D: u4 N" N4 s4 _                        continue;
7 s' V0 [) N: S& R3 s, A, Z                    lpSkill->dwLevel = dwTmpSkLevel;
3 H6 `# L3 j; c- z                }  _# B: y' ^; C
            }' A9 |) O: p8 N' L' M
        }/ [6 t3 i0 h- l8 H! B
        else if(IsHero())' \) C% L! {; t- v/ J9 U
        {
0 n8 L# M' k* T6 h            for( int i = 0; i < MAX_SKILL_JOB; i++ )
: q5 h9 T5 ]7 }5 Y* K! t            {                * \! R& R! d7 ^
                LPSKILL lpSkill = &(m_aJobSkill);- [1 }& K4 a1 J; m. ~
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
8 i5 w% \3 H0 z1 ^                {7 |7 `$ B2 e$ V2 |
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
% f, p7 L  q, }$ J" a) P* v9 L                    if( pSkillProp == NULL )
& |! Y3 Z5 L; i                        continue;
4 l- x% a" S3 `: ~* P8 I5 i                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
* E3 Z% |; D+ }& `! s* Y5 e: \. h                        continue;/ C: i' Y% x! Y/ f2 J
                    lpSkill->dwLevel = 5;
! p4 f  I. k" ?1 g. g                }
0 G5 X/ R: W/ X! W. N            }& h+ H- G* |# D  C: Z: {* q
        }
# K  b" G1 J+ u6 c1 m4 _) q        else if(IsLegendHero())
1 A$ M3 L$ A. i$ o$ V4 W$ E        {
0 r1 D4 z* E  g% b! Q4 M" D1 F            for( int i = 0; i < MAX_SKILL_JOB; i++ ) " b, h6 K3 M8 f9 g6 z/ q* k
            {               
8 t; ?1 v& Q. k. t, F0 A                LPSKILL lpSkill = &(m_aJobSkill);, `6 R( d: l, ]+ K$ V- x1 y5 t
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
' z( g* h4 S  o$ A- f' Q                {0 u& f1 k+ v- T" M
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
2 c8 R& g5 J/ ]: x. b4 V4 x8 i                    if( pSkillProp == NULL )
  H# f/ ^' [: b) O  H                        continue;( x1 F; F$ H  X+ {0 e" V: \
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
6 n! r  K1 ^. n5 O, y6 G                        continue;
' s# ]& w) s$ R                    lpSkill->dwLevel = 5;
! m4 s$ Z$ B5 N. c                }
7 S  a$ A: y8 Q' p- c% n* E" \            }
) E- {8 H5 f7 d- h9 [8 }8 ]( _' F        }  x1 f% W* c* [+ Y0 |; O+ ]$ e
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans( F+ M; g$ b2 b2 S
        if( bGamma )' m6 ~( X$ M; A8 N8 \4 N' ^& C
        {& o- v0 e( _! ~- {+ |/ K* w5 M% p3 m" |
            m_nExp1 = 0;
/ K0 ?9 R) F5 S8 |  c        }# C' W- S) ~' J0 h; w
% y" W# e) A& ?! ?, h7 g. f
        ( (CUser*)this )->AddSetChangeJob( nJob );( ]4 ?7 Z' S5 R0 U& t, Z, O
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );# ]" ?# J4 ]+ z/ r$ p. l, T! P

; u3 U" O- f. v7 O# {" I- U; E+ `' b5 G8 j3 z- W
#if __VER >= 11 // __SYS_PLAYER_DATA
3 m  R' D- j* n# m% _0 _( H0 C1 m        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );& i0 }# T$ E9 k, n  ^
#else    // __SYS_PLAYER_DATA8 G0 k6 f* Z2 |' j: N- w- D
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
7 ]9 l1 p! `1 V  b& `        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
/ O" K; X# e3 M9 ^7 N* Y: `        if( m_idGuild != 0 )! Y+ a" J6 H# P' P. O
            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );
. a0 i0 _4 S8 s* ]' X#endif    // __SYS_PLAYER_DATA) J* J3 F$ k9 n. _2 Y7 Z4 W2 Z! X: m
        SetHitPoint( GetMaxHitPoint() );
1 J4 ?, B$ f8 y5 z" B        SetManaPoint( GetMaxManaPoint() );. b# b* y/ ^- V
        SetFatiguePoint( GetMaxFatiguePoint() );
6 _- r" ?  o. M% o6 t6 {        if( nJob >= 1 && nJob <= 4 )
8 I; r2 N$ d! R6 X& o) t" I* r7 r        {
! b8 E+ N6 @& i1 K            m_nStr = m_nSta = m_nDex = m_nInt = 15;
4 q' H& W8 K) w$ a% O8 v3 g. Y            m_nRemainGP = 28;9 s2 D# y; u$ m8 E( Q6 H- N
        }
! N1 g' P  X8 p5 J& a  a% t        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
# b( W8 {- r) @9 W8 G& `        {
# J' o5 f4 y5 x  D! @# O% @            m_nRemainGP = 118;; F3 D% b, ~/ k/ g" T6 m
            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;
5 G5 J$ M/ D. g6 a' l. O1 W% A- T            m_nStr = m_nSta = m_nDex = m_nInt = 15;
" Y/ u- P" C7 R. E3 B        }
6 q4 L7 @6 x) h# e/ n; F2 U        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )$ k: O2 e+ i- [5 J* |
        {
$ V4 I+ F+ _. {+ W  R  t+ L8 D% v# W            CItemElem itemelem;0 D& u& H" V% t* n- P
            itemelem.m_nItemNum = 1;
* S* }. J! W; Y/ h! U            itemelem.m_bCharged = TRUE;  p" a5 K. h/ a) A; @/ q
            BYTE nID;
/ g8 T- E! F) e! B/ z* l' i! Q( j- ~
            if( nJob == JOB_MENTALIST_HERO )- n8 t: t8 m# Z  @8 r" [% j/ e# l, g/ N
                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
, W: }* M' v& R5 p( a; V9 f            if( nJob == JOB_FORCEMASTER_HERO )
6 f0 }, ]% U6 F$ r$ O                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;7 w9 f" n& z/ G2 }, `! g
4 `5 t0 ?! w1 M, f" l. Q
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );
  v1 N* U* f- ^  M9 f. e) R        }
* ~) b6 M, @- ]7 S5 G0 v7 q        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );8 d/ z/ R, u* v
        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );7 ]: f. _  w+ g- ~* k
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );& s8 R# J; O) o, E$ M% }
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
7 B  Q! y; l% T- h2 p        ( (CUser*)this )->AddTaskBar();*/. o( M4 u: S1 a5 h" U% ~7 E  k
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );
; v( E) p% N9 ]. ~  o#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?5 N4 b2 O' {& |) d3 H
        ((CUser*)this)->CheckHonorStat();
+ s! T. }' h" r- `. o        ((CUser*)this)->AddHonorListAck();; O* [. n& A6 k* E, _& l
        g_UserMng.AddHonorTitleChange( this, m_nHonor);% I& A2 k9 {( l2 f  M
#endif    // __HONORABLE_TITLE            // ′Tà?
3 i" o9 ~5 C; I* B" d7 P0 C    }
9 J9 W: b0 V3 I' E#endif // __WORLDSERVER
8 L* n/ }7 ]8 }  o}  
1 [0 U' u4 }$ N$ m& g) ]
# G; M& h6 _& B( s5 w8 w- G8 O然后你进入functextcmd.cpp并添加以下
9 Y1 q  X+ d3 p) T! [* c
4 K1 ~% v- m* n5 R代码:2 |# c9 i* j" T" A# n( \
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )- H: j' H) }1 O' g4 q! F4 q2 f/ W9 c
下面插入- ~# q) C6 G+ k9 S+ ]
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  * M5 |) C" j7 G: N

4 _5 R3 U; z0 Z9 U$ `) f$ j然后你去
+ D) ~1 v2 s' k* Z" Y1 |6 O6 w  F1 O+ L5 i$ h1 i5 K5 m
代码:
# i1 {, s' {( y# P0 z& R, n代码
& I) u: k# q/ }4 Y# ?' ~, h; a) R9 zBOOL TextCmd_ClearPropose( CScanner & s )
1 b2 Y$ j) F% K! q{
0 |  \! B9 b; d$ I0 C: o. Y$ O0 m: N#ifdef __WORLDSERVER" P* E6 j+ Z" k/ K- D1 H9 L4 j0 h
    CUser* pUser    = (CUser*)s.dwValue;
, l0 |4 a* z, T3 i0 f    g_dpDBClient.SendClearPropose();& H/ a  ]7 I) i; B* ]
#endif    // __WORLDSERVER
$ v0 A# w/ P& x8 n    return TRUE;' W( M  C' E1 u
}
) c8 z. T6 ~, a! q下面插入
& _1 J- S: r: PBOOL TextCmd_rebirth( CScanner& scanner )
8 R8 }. u  ?4 ?! C) f" R{. \  {7 f8 O0 r) B
#ifdef __WORLDSERVER3 g1 H1 p& L4 {' r" q; |
CUser *pUser;# z9 r9 ~8 B2 A& m
pUser = (CUser*)scanner.dwValue;
. _1 t  k6 H7 E# n7 r/ h: g6 M3 vif(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
+ f4 `4 f; y. L/ s, b% CpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);
/ p+ e  r+ @% G  [. [7 }4 celse
2 L& A0 `) n7 @; C( [pUser->AddText("你还未达到重生条件!");
: q. ?* o; r: r) ^#endif0 w- {" D. O5 i( E5 g  z* v
return TRUE;' n5 m, i( b, b0 I1 W. c
}  : T  M6 a0 e- f$ K

: u- [7 ]# Y- N2 N) X' [4 ^/ i
6 \" t# H( I* E9 _& K2 I2 ~- A
1 v+ f: [: J- G9 T# V
& x- a& }; M1 r  D$ ^( }
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-26 21:45 , Processed in 0.081006 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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