飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
1 V8 s+ C" b! w. P4 j2 o& Y! d
% \9 R- t% c# z! R" P: a+ ]Mover.h
( B. j3 B8 {# f0 ?% E, f代码:9 [7 z; b/ e- }' o
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü
2 K; w$ m* }# D, V! `
" u$ B! @- \3 U1 i下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
- _9 P% {: ~6 \& s" N  S3 ?' U1 x1 |5 L  q+ {
然后你去mover.cpp添加
1 |, z2 J: e/ z: \/ j  |; \) @. ]& X
代码:
' }& q  r7 j  |8 M: ~" vvoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma )
4 c% }* a) o/ K0 I4 K( ^1 P8 @6 ^% C{
( f1 Y$ X& h% k4 h- _#ifdef __WORLDSERVER
* g- [3 j$ O7 i; a0 C    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó" d6 {; f$ |& O9 {* H
    MoverProp* pProp = GetProp();0 h3 l6 S( J6 Y4 P3 z
    if( pProp )" p# y$ v9 S) ~2 t& ^
    {
6 x4 r7 W- y! T5 A! P        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
3 |4 G7 k. p4 P/ S$ M        {: @' O, [; ], h- Z9 u( D. B$ p, \
            AddChangeJob( nJob );
# x% E8 X) T- ?1 s  @* r        }else{
) u6 i) P/ a$ P$ T; p, T; C            return;
2 E) [5 [4 m! A; D, s( E0 P7 G        }
7 P1 l' G5 n" R6 M2 p1 ]        int nPoint = 0;
+ I) v# }% O4 s0 \- {5 D3 M        if( m_nJob == JOB_MERCENARY )
. B- P5 |7 S6 C3 i* ^            nPoint += 40;/ U8 ?& p0 _' a2 }  I* a/ I
        else if( m_nJob == JOB_ACROBAT )1 X7 n& v: ~% @
            nPoint += 50;! H' V! @- w  T" j) @) m
        else if( m_nJob == JOB_ASSIST )1 i* b2 I9 q) h3 m) d$ v
            nPoint += 60;
* S+ d( a. \% [/ v# X  A# e        else if( m_nJob == JOB_MAGICIAN )' H& w, V: W$ E! p! f
            nPoint += 90;
- s, U. r, y/ Q, l        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
  \& R; R+ [+ d0 a. A3 T9 C            nPoint += 120;  w8 c! g* u' x+ @# y
        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )1 M4 ^' K. j) x. Q/ d- u2 B
            nPoint += 150;: z& ]# j4 p3 m3 s
        else if( m_nJob ==  JOB_RINGMASTER )! ~. @+ d( z6 w, U! a
            nPoint += 160;
7 h/ M+ l! A5 B# ^% O" a        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )
* W  \( D# W8 M1 W            nPoint += 180;
7 `  ~0 e& \- k; ^- c, N5 C  Q# {        else if( m_nJob ==  JOB_ELEMENTOR )
; s" B0 n9 P4 y: b6 O8 c            nPoint += 390;
& i7 U6 h! i5 M7 O" h2 U        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )9 Y, E& E1 o1 O
            nPoint += 120;
& e1 ?/ i5 F0 u5 J$ N1 n: s! J        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
1 S; ?% t# x- @  a7 @" {+ Q            nPoint += 150;
% v  v" O: T4 F* B' n) @: U3 O        else if( nJob ==  JOB_FLORIST_HERO )) r" _6 H8 l& n& X8 [* S" W
            nPoint += 160;$ ?% z3 \8 t( {  l" A
        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )
2 H4 H5 q* T- w3 L& l& \  t            nPoint += 180;
, e+ O, B' |+ e2 i( {  \        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
! D8 c, t$ Q# a            nPoint += 390;
9 t' S( {4 e* c* O% M
& b: _; r+ |% J2 Y8 g: p3 |2 X* P        AddSkillPoint( nPoint );' M! V  U( W/ |) J( P7 T  @3 g1 F
        m_nLevel = nLevel;
% v9 s7 Q( R) [* m. Y! S( n1 M  a1 d* F6 m' P& ~
        SetJobLevel( nLevel, nJob );! ?2 y# \! F0 g5 _1 }5 q" N
        m_nDeathLevel = nLevel;
- u: f0 I  d* e  I# M' v! k#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans7 ^# ]. p- E# X4 y- Y# u" Z
        if(IsMaster())  {+ Q9 V) p/ b
        {* y: ?+ _  T3 @
            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108
3 B$ e; q+ ^! v            if( nLevel > 59 && nLevel < 72 )* ^/ C) J" S" I
                dwTmpSkLevel = 1;* y. G8 n$ ]4 a- {! T, |' H
            else if( nLevel > 71 && nLevel < 84 )/ H$ s8 g- k6 q: ]6 q% o& Y( E* A
                dwTmpSkLevel = 2;  s& W8 u' U* L7 I/ x  F  k, Z
            else if( nLevel > 83 && nLevel < 96 )
3 T" [; S% h0 j) D7 E                dwTmpSkLevel = 3;* t% x- X, s+ m+ b& _
            else if( nLevel > 95 && nLevel < 108 )/ J5 n; P  g* @* a5 S" a
                dwTmpSkLevel = 4;" x. K, B3 G0 L8 T" U8 p4 w' a
            else if( nLevel > 107 && nLevel < 120 )
, C: v9 c, ?/ u3 g% p                dwTmpSkLevel = 5;9 A* l! {/ `' f/ R8 A: Q) X( B3 n2 W
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) # z4 n4 R+ _6 W! W  }( }' w
            {               
; h" G4 M8 I8 z# c) Z0 z                LPSKILL lpSkill = &(m_aJobSkill);, Y& h" R! s( T7 j' Y+ v. @* e2 F
                if( lpSkill && lpSkill->dwSkill != NULL_ID )$ v1 y: T! Y& ]5 V' T" S& s
                {
+ ~6 x- c5 |# c9 X/ ]; R& w7 z2 D                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            ' _' i1 l- y8 G! }
                    if( pSkillProp == NULL )
! V, k; ^' ?* Q1 X$ E9 B                        continue;
) C+ o, ^' I! b0 u# _                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
. h' {! ~3 `+ B+ |) l4 }                        continue;* H1 v! G* E3 _9 ?$ p* R3 ^+ ~& ^8 u
                    lpSkill->dwLevel = dwTmpSkLevel;
: l5 a& S! \, D# {' J' z; Q                }, o9 y; @; g+ u8 o
            }
$ g# e- ?2 m8 l6 R3 h+ T3 W        }
0 n6 y! p% N; x- M7 u, j" L        else if(IsHero())& j9 O0 P4 X3 ^* U0 Q+ s! t9 p
        {
  B1 \$ C0 S" l            for( int i = 0; i < MAX_SKILL_JOB; i++ ) . O" @& z7 ^$ N: Z( X
            {                / [: L8 p! e% h& G& l, ^3 t
                LPSKILL lpSkill = &(m_aJobSkill);; x+ [  k& e: _+ d5 R6 x/ u9 q
                if( lpSkill && lpSkill->dwSkill != NULL_ID )
5 T3 A- V) G8 l: \                {% R( ]+ Q5 x1 Z# ?5 ]4 O# C0 m
                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
6 P: L/ ?% Z6 B2 N6 D                    if( pSkillProp == NULL )
5 }& h$ @& o/ i/ ~                        continue;" N6 F8 b! N. Y/ J
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)6 _, d# n5 U+ a% ^& M7 {% V
                        continue;
  i& B( i& S5 U                    lpSkill->dwLevel = 5;7 J$ U: I+ \# [6 @( R
                }
% ~# o1 u0 @) b            }9 v9 G8 ]% B& X
        }: j1 H7 A$ ^. P$ I' A3 T; j; k: {
        else if(IsLegendHero()), v/ I& \2 b5 \% U
        {
: e) i  Y$ L9 h1 S7 \6 Y) ~' ~; F% W            for( int i = 0; i < MAX_SKILL_JOB; i++ )
. k2 h; p5 H/ J" f            {               
7 H3 \! K5 Y. Y5 I                LPSKILL lpSkill = &(m_aJobSkill);
  P1 b% u. [2 f+ e                if( lpSkill && lpSkill->dwSkill != NULL_ID )- D' j4 k6 _* L0 W
                {
+ X" m" ]  F: u8 ^% E1 F                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            - P- G; o+ G3 u- Y' g* c
                    if( pSkillProp == NULL )$ o$ V9 X, Z( W0 L3 x
                        continue;) w% C: N" r6 d& D+ m' O, E
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
0 U- Z- D4 l4 ]9 T* @; R                        continue;
/ x4 \+ `0 \* Y5 g& R  Z/ i                    lpSkill->dwLevel = 5;
) A7 ]+ B# W) k0 {                }
4 V- }* y- v. c# m& c            }: Z1 E1 Y* K  L2 V
        }
% L+ m# ?" _) D: v7 O' X3 m1 E8 b#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
$ w! H8 B4 l; U* q* a( p        if( bGamma )
# o2 D0 j, Z0 k4 h) [8 S        {& c; D7 v; j+ J% D
            m_nExp1 = 0;# u- N! X0 S0 ]3 M5 R
        }
% M  x8 l6 R5 D" U8 j1 R: y3 w5 B6 C+ j* k# l% U7 b3 i, c. S7 f" r
        ( (CUser*)this )->AddSetChangeJob( nJob );
4 y( g  V; @3 f        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );/ `) q/ K2 U/ E

% ^  y* B& X: o4 v2 r
$ g1 y& U% P, A5 X#if __VER >= 11 // __SYS_PLAYER_DATA
$ r) n* b" j% C' F% V        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );, s* {' B& G. S2 O
#else    // __SYS_PLAYER_DATA4 k2 d$ X# q8 |5 ]4 q! c5 E1 d
        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );* e' z- ~3 P. {
        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );
, }: Q  O" E( z, l        if( m_idGuild != 0 )
! s' l/ a4 V% @1 |3 f            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );3 t; h: V. x, O
#endif    // __SYS_PLAYER_DATA8 X7 C+ e5 _6 e% I
        SetHitPoint( GetMaxHitPoint() );
! R' \2 k( B# A" P        SetManaPoint( GetMaxManaPoint() );
7 Y9 v4 e0 p' a1 i( x        SetFatiguePoint( GetMaxFatiguePoint() );; T6 h& \. K9 ]$ Y+ b) E
        if( nJob >= 1 && nJob <= 4 )
7 ?% g# n# _- H0 X        {
- y: {. M* F9 [7 t2 o3 b- y( l            m_nStr = m_nSta = m_nDex = m_nInt = 15;
0 Y  h" L4 i5 i/ m# o" Y            m_nRemainGP = 28;
- ?! ?( D1 h5 ^3 f        }
2 c9 s. G3 P, L1 L        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )8 @" m3 x% n. Z  L$ U6 Q
        {1 S' l5 E5 u4 x$ i- R! p# I/ G
            m_nRemainGP = 118;
- s! |+ w: Z; [' L, S  j            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;2 o4 o1 K! y3 m  ?7 H, W9 w' P$ B
            m_nStr = m_nSta = m_nDex = m_nInt = 15;6 s, z* U4 j( q7 i
        }: a* i; |4 @. |' K4 C( b
        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO )
) k' z- e8 f- k/ ~. @8 b        {
& y1 j3 u. {# ~+ @            CItemElem itemelem;8 x: w: g3 w+ e' R9 I
            itemelem.m_nItemNum = 1;  R' ~$ t# z8 I5 _& ]8 B- _% w4 k$ M
            itemelem.m_bCharged = TRUE;5 L7 ?* x2 M( F% C* [
            BYTE nID;
+ w8 Y: `" c4 `3 q2 [! Q$ E0 o% s7 w, o0 f4 d; W$ t0 R# I
            if( nJob == JOB_MENTALIST_HERO )
7 i& k/ Q1 s" L- f) G0 s, C  t                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
# Q  H8 G* V8 t) \8 [            if( nJob == JOB_FORCEMASTER_HERO )
  |7 Q& w+ }' Z3 i& y1 n5 l                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;) l) V2 n/ o3 N9 a* N6 T

, p, j) d  g/ U            ( ( CUser*)this)->CreateItem( &itemelem, &nID );& c8 e# H0 Q. |6 `- ?8 }$ P
        }: i8 o; q" Z% y4 a
        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
$ Z/ O+ o$ H* W+ M% x2 i- h: V        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );. Q0 f; Y! N% r
        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );5 N: y$ j. y, _7 b" X# ?/ O
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
* z3 L/ W. A; Z# B) a# ?        ( (CUser*)this )->AddTaskBar();*/
& W6 f  d" `. p+ z        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );1 {* M. n6 J" A* F
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?8 V( |( [/ C' h+ e! z
        ((CUser*)this)->CheckHonorStat();* E, o9 K. ?. o  v4 V9 K( H# f, m
        ((CUser*)this)->AddHonorListAck();3 X; C, K/ y( \
        g_UserMng.AddHonorTitleChange( this, m_nHonor);
& F* n; h. M0 P#endif    // __HONORABLE_TITLE            // ′Tà?
9 s5 |. W" o1 b6 y% X$ E+ m    }
. ]) F8 X% }/ t. _#endif // __WORLDSERVER2 X' d! h" _+ {; Z# Z) G8 V; C5 _
}  " R! k4 V2 k* c6 Z2 z

8 D- v, U# W! `8 W' H然后你进入functextcmd.cpp并添加以下# d+ J. p; R" z1 X
8 q( j) w/ O0 z  E( `
代码:* ]( ~- ?1 R! H  g
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
2 _0 a; k4 Y! |( n9 @8 G# w下面插入4 R7 I+ S; a$ b& O$ J  l/ b) w2 U
ON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  
% N' s% L! Q1 ?: Y8 @+ |
/ f; \9 E/ b0 [9 f5 k然后你去
( w" R2 j8 q$ Y$ N3 n
: \/ ]% c. Q/ s! `9 Z3 }$ N# }代码:# B9 v$ d+ ~! h) n/ q: [
代码, R1 A, b( D6 ?
BOOL TextCmd_ClearPropose( CScanner & s )
7 ^: I6 B! v3 K4 t7 {  g1 `{
+ \9 y& N1 [" r2 q#ifdef __WORLDSERVER; W2 p4 Q, Q; q  P$ J+ s
    CUser* pUser    = (CUser*)s.dwValue;
- }, A* t; W% S6 P4 a    g_dpDBClient.SendClearPropose();
3 M1 p& l' ~6 S/ p0 P; {4 J#endif    // __WORLDSERVER
6 k3 y/ Y1 Q8 ^, Y. n  r' A    return TRUE;
# \  i& c2 |% r# m2 F( R}
+ }$ t; Q* |. z下面插入8 ?! {" s5 {7 i& N3 b( x
BOOL TextCmd_rebirth( CScanner& scanner )
  ?/ K: B) l# J: q- @: B0 V{
; ^% `' ~( |- y: k3 \9 x#ifdef __WORLDSERVER
0 e, |& C0 k/ j. x* ~+ {) O: z  d- DCUser *pUser;
1 g  ~7 x: k2 XpUser = (CUser*)scanner.dwValue;& c" z' B2 W! W
if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
) }5 Y$ o9 g2 I0 Y; NpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);3 U$ j. l9 C/ W9 U& K$ O' ^& Q' d+ }
else
* x. }5 [. l: N# BpUser->AddText("你还未达到重生条件!");
/ v1 z. ^( ], U8 {! K4 I4 {#endif
4 L& r- V) O+ h4 \- Y9 K9 Treturn TRUE;
3 k1 `" P& \$ P' \5 x4 B+ F}  * t4 P$ [/ W2 R' ?6 x

' K6 i/ z1 Y. V; \- k2 e5 ~0 C
  Y( r7 C7 y0 O: Y& e6 B& l. B4 b; q( D8 e9 ]
+ h- A$ B1 `' {" b. s/ d3 T
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-7 14:57 , Processed in 0.122433 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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