飞飞世界论坛

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

通过命令重生

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:42:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
至于V15和源文件发布重生不再使用通过HP它不再去我会告诉你如何可以通过与它聊天源befehel
( t# U9 s5 O$ h3 F
/ A; o/ L+ X0 }4 n! g1 T  t3 bMover.h! c3 S5 l- `1 w" ?0 c% g# |. g
代码:5 s$ s4 h0 y  o
找到: void            InitLevel( int nJob, LONG nLevel, BOOL bGamma = TRUE );            // °′???| nLevel·? 1ù2?áü3 o% ]  |( b2 C) U$ l4 Q9 v  G" l

# X7 l  q4 }5 m, [1 r7 |5 K下面插入: void            InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma = TRUE ) ;  
) k9 V$ U  V8 L7 h5 u: V2 G+ n& I
然后你去mover.cpp添加
. J+ U) b1 f# E; T- D8 X
' o1 w, c0 I, w5 S. I$ Y( b; Y9 K; L代码:
9 ?! I7 D  d; B3 h+ [# avoid CMover::InitLevelPumbaaa( int nJob, LONG nLevel, BOOL bGamma ), L( J. S; U9 ?0 W
{
& S" ^, F# I& o' U#ifdef __WORLDSERVER, w) S/ A% U( ]( D
    // ???μàú ?í·éà?·? ·1o§?÷ ??′?°÷àó% U! @; K' z6 o$ g1 N
    MoverProp* pProp = GetProp();
& `: D# D0 T8 @" k/ F. H' s& K) w! L    if( pProp )
! R5 b- `2 |& c    {) t: `2 c/ K  `. t) Q1 Y/ b! Q
        if( nJob > 0 && nJob < MAX_LEGEND_HERO )
6 t* N' c0 Q1 y        {
" J* a. N9 G; `! t7 H, p            AddChangeJob( nJob );3 E: a' L' p3 @5 i- X
        }else{, U, Z3 {4 O& @. F/ B8 N
            return;
* L- R$ O9 i2 n, p& |, d# f) A        }
8 l. H' {& o# |; Z0 ?6 x$ H        int nPoint = 0;
2 N; {0 M  [5 m3 c        if( m_nJob == JOB_MERCENARY )
# e! q5 A6 U3 m( r. h8 C            nPoint += 40;
' ?- q2 o* @  D; f        else if( m_nJob == JOB_ACROBAT )
7 _, i- |( [* H. {- a1 x, R            nPoint += 50;* k5 C7 h+ n: o$ k1 h8 C$ I
        else if( m_nJob == JOB_ASSIST )' T+ `! t0 i0 p( D
            nPoint += 60;
- u8 B* D2 ?/ ~        else if( m_nJob == JOB_MAGICIAN )  S4 }5 z; s, h* O, U1 b4 |, Q
            nPoint += 90;
/ G9 l% E% m0 H  W  y        else if( m_nJob ==  JOB_KNIGHT || m_nJob ==  JOB_BLADE )
) D" Z6 a8 j& ?7 P6 O3 Q            nPoint += 120;1 I" d7 @  Y' s4 \- `, h) m$ f. J9 ]
        else if( m_nJob ==  JOB_JESTER || m_nJob ==  JOB_RANGER )0 u7 f! G: K7 r! A1 [
            nPoint += 150;
, p8 c8 I, z# [! C        else if( m_nJob ==  JOB_RINGMASTER )# r* j% L# A8 h9 g9 m7 n# |! r
            nPoint += 160;
9 s2 o2 l% u* C% e        else if( m_nJob ==  JOB_BILLPOSTER || m_nJob ==  JOB_PSYCHIKEEPER )" S8 @8 u! s( A* A( L' ~
            nPoint += 180;! F7 X" U9 s0 o8 I2 Q) {
        else if( m_nJob ==  JOB_ELEMENTOR )
9 n+ H2 f; O- M0 n/ s3 n            nPoint += 390;! a) ]3 m1 a  l) F
        else if( nJob ==  JOB_LORDTEMPLER_HERO || nJob ==  JOB_STORMBLADE_HERO )
2 z- K* T- _1 q! Q3 g            nPoint += 120;8 c( y* D& C9 D0 u1 s2 U1 A8 ^
        else if( nJob ==  JOB_WINDLURKER_HERO || nJob ==  JOB_CRACKSHOOTER_HERO )
9 B. L7 L( Q6 Z0 T            nPoint += 150;3 a( ?$ k* x7 S9 }
        else if( nJob ==  JOB_FLORIST_HERO )8 q2 _  }" y% f# _2 n, O- `1 e
            nPoint += 160;
$ }- L. M! r. @1 |% ?+ A        else if( nJob ==  JOB_FORCEMASTER_HERO || nJob ==  JOB_MENTALIST_HERO )6 a; @# q  T, q3 o
            nPoint += 180;' K" ^2 `$ [3 P1 R
        else if( nJob ==  JOB_ELEMENTORLORD_HERO )
2 g& c2 U8 }' o! s* B            nPoint += 390;9 [* d/ _* v0 f( S" ]9 S2 D1 Q

# a3 H7 p/ \) |* P- W        AddSkillPoint( nPoint );
- Q# {$ S' R! L. i; B        m_nLevel = nLevel;
$ w; u1 h* O* R1 ^: c$ \
! |! m& G2 ]. F, `6 f$ Y$ S/ b3 `        SetJobLevel( nLevel, nJob );
! b. q# |; V7 p) S' ^        m_nDeathLevel = nLevel;* H2 I0 ^2 `. Q1 _. `
#if __VER >= 10 // __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans* T. ~. ~+ J# H# q1 s7 J
        if(IsMaster())
3 m1 n: I9 y& d        {0 o) }% B& l( V& m' f" y' r8 ]
            int dwTmpSkLevel = 1;//60, 72, 84, 96, 108& c- T; ~4 z. C7 T! N
            if( nLevel > 59 && nLevel < 72 )5 L6 x( e2 {6 j: }6 ]
                dwTmpSkLevel = 1;
/ V( C+ L( n6 s% a, \            else if( nLevel > 71 && nLevel < 84 )1 N6 }; x7 _% G3 N  @3 F
                dwTmpSkLevel = 2;' B! o9 I' W$ b, {
            else if( nLevel > 83 && nLevel < 96 )9 q! C! U( V' u0 d! L* c+ `
                dwTmpSkLevel = 3;2 c/ Y. m- M+ [) Q- S+ v0 }
            else if( nLevel > 95 && nLevel < 108 )
/ s% U' p, n7 j. G' |, i                dwTmpSkLevel = 4;0 Z& ?+ \4 G7 `5 n
            else if( nLevel > 107 && nLevel < 120 )
  V/ u  ~  ]6 Q# S; V                dwTmpSkLevel = 5;; A: e- @- l3 q+ |$ Q
            for( int i = 0; i < MAX_SKILL_JOB; i++ ) ( l. d5 c) X# n4 }7 k' x
            {                ' K. ?" o$ o/ y  \3 f0 E, T+ I4 E
                LPSKILL lpSkill = &(m_aJobSkill);
  {* I) z5 m9 l; O2 l4 {) Q6 V                if( lpSkill && lpSkill->dwSkill != NULL_ID )8 z1 z8 X/ Z  p; L. C6 _
                {
( E; Z$ x8 D% q0 e                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
% y6 j! F; l/ \$ Q8 F                    if( pSkillProp == NULL )
/ u4 a# J& f0 i5 y                        continue;
. z1 Y0 E0 B8 W1 S8 H/ g5 c5 [                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
. C& U: j+ x7 M8 l* T3 T6 r                        continue;" ?) j# s  ]* b# t2 D4 e/ C& G
                    lpSkill->dwLevel = dwTmpSkLevel;
) V) W- `# }5 w  a: K                }& V) `9 K! |  c
            }* {$ ?$ j& u8 L
        }
: f! c- e" H' i* G) j) D* _        else if(IsHero()); P" z8 _; U  y4 W2 C" E# g1 k
        {
5 ^) k% E: ^( E9 s/ K3 X5 Y            for( int i = 0; i < MAX_SKILL_JOB; i++ )
3 @1 d4 w( [7 i1 X  D            {               
' w2 [) r$ d" j( \' V1 P                LPSKILL lpSkill = &(m_aJobSkill);
* q1 a1 I- V/ K. n                if( lpSkill && lpSkill->dwSkill != NULL_ID )
; L; |, [4 v& |9 h( X* e                {
9 C+ j# B; G5 o) _                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            
3 U3 y- s& D$ {" ^; O$ {  t                    if( pSkillProp == NULL )6 W* L! T; W, u2 Y: P! D9 C
                        continue;7 ^% K0 J* E1 |! F6 G: t
                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)
) z2 O4 G2 A/ m8 Q* |% K                        continue;
+ _6 _2 _6 q* o4 L8 }* n1 M                    lpSkill->dwLevel = 5;
6 P+ q) z4 O# P1 Z; j" h                }
( D7 h5 q) S0 P5 k7 d" o" L2 m            }
& ^' u3 Y/ O$ ]0 e( W        }
4 S3 Q# B, b8 ]( \3 x2 B  x        else if(IsLegendHero())
, g+ C( M' d  q% E& [% D        {+ T# r* L3 Z1 i9 R' F. R' k
            for( int i = 0; i < MAX_SKILL_JOB; i++ )
$ v+ V; a: H$ r0 A% a, \) e6 i% U8 H, }            {                ( |+ b' F+ R/ R- b+ k- R
                LPSKILL lpSkill = &(m_aJobSkill);
( A& a: A5 W9 X* f  X' E! x. c2 V  \                if( lpSkill && lpSkill->dwSkill != NULL_ID )
9 L. H; i: [4 p% M. e                {
& P6 n) A+ n1 k1 Y                    ItemProp* pSkillProp    = prj.GetSkillProp( lpSkill->dwSkill );            7 ]# _$ s/ s) N
                    if( pSkillProp == NULL )
& o- t5 ?, f. e                        continue;
* K# e& p, j8 e+ z) j                    if( pSkillProp->dwItemKind1 != JTYPE_MASTER)2 I  {( }. D; o7 |
                        continue;
' G$ w9 K$ Z" N; y; x) [  }                    lpSkill->dwLevel = 5;
# b5 D. }4 Q- h2 E! h1 j                }
5 R' C6 h6 b- V' h% O( I            }' f) ]9 g1 E6 ~5 t
        }$ z" `: B9 v4 w! r9 O8 w4 \7 l* ?
#endif    //     __LEGEND    //    10?÷ àü?????o??    Neuz, World, Trans
, G; x. q& B7 r9 s5 R6 O: B- X        if( bGamma )# B3 e# o# L6 h/ c& v. a2 a, a
        {
+ k/ v# t1 F3 p+ t4 A, F6 Y            m_nExp1 = 0;
- L- w# a( o: F6 S        }
) g0 k% L0 L& [" p, q/ A3 m1 k% L# T% Z+ I* O9 B+ B
        ( (CUser*)this )->AddSetChangeJob( nJob );+ o/ ~5 S0 l$ z$ [7 X: l
        g_UserMng.AddNearSetChangeJob( this, nJob, &((CUser*)this)->m_aJobSkill[MAX_JOB_SKILL] );
' l0 Z3 y. h7 d/ _3 }% Y# l9 h
2 B3 B8 f2 w; h' a! a: ?4 {, [$ b: {* S
# N; D5 W2 ?) u5 V9 j. r" Q- o! J#if __VER >= 11 // __SYS_PLAYER_DATA
) l9 f7 a9 a# j' E8 ?9 t- U        g_dpDBClient.SendUpdatePlayerData( (CUser*)this );
* C+ `) ~) k8 M: h: S+ d$ F3 j9 ~#else    // __SYS_PLAYER_DATA
$ C6 ]7 D7 O( Y        g_DPCoreClient.SendPartyMemberJob( (CUser*)this );
9 d/ ?+ u% K0 V* u9 M+ [        g_DPCoreClient.SendFriendChangeJob( (CUser*)this );7 k( _% N- c8 x/ @; B. N/ s
        if( m_idGuild != 0 )
: Z+ v5 D' t% a2 X            g_DPCoreClient.SendGuildChangeJobLevel( (CUser*)this );4 Y# ~% e" y3 w
#endif    // __SYS_PLAYER_DATA. t: T" a. T& p
        SetHitPoint( GetMaxHitPoint() );
$ _8 R, G: l9 i; b6 `" t        SetManaPoint( GetMaxManaPoint() );
- G9 J) _$ H* n( l        SetFatiguePoint( GetMaxFatiguePoint() );
$ j/ z  Y+ l8 p( F" ~        if( nJob >= 1 && nJob <= 4 )
1 B7 s6 {6 x% c' c        {$ j2 f  B! T$ j* m$ [
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
9 ^9 M9 t7 m9 W            m_nRemainGP = 28;
8 u1 Q- k" F% W* W  h! w        }
8 ~- j# S# w2 E        if( nJob >= MAX_PROFESSIONAL && nJob < MAX_MASTER )
( W. |2 d& I# C! o. v        {; G6 T+ Y" k  j& `3 ^
            m_nRemainGP = 118;
3 t4 _/ M, K# E# M. u            //m_nRemainGP = ( m_nSta - 15 ) + ( m_nStr - 15 ) + ( m_nDex - 15 ) + ( m_nInt - 15 ) + m_nRemainGP;: r+ c0 P, p+ _% k! z' T3 f
            m_nStr = m_nSta = m_nDex = m_nInt = 15;
; C1 E: k# n5 }/ g0 J, A) Y        }2 ], P" T! d# O1 G3 l
        if( nJob == JOB_MENTALIST_HERO || nJob == JOB_FORCEMASTER_HERO ), g1 x$ c, F0 G  a! ?; _1 `2 [
        {
0 @+ Q6 Z. B  F" M            CItemElem itemelem;9 P  |  J, z+ t
            itemelem.m_nItemNum = 1;
' E  F/ d2 p- h5 ?" H            itemelem.m_bCharged = TRUE;
. t' t, t( F2 z2 l8 s4 l! S  `% |5 i            BYTE nID;9 G. Y( V! ?; D; @! W; K& M2 O% U
* k: R' w- M+ C; C
            if( nJob == JOB_MENTALIST_HERO )
8 e1 C2 \! C$ e/ ~5 ?/ x, O9 e0 Q                itemelem.m_dwItemId = II_WEA_BOOK_BOKROMAIN;
; B% K3 V2 Y7 Z* X0 Q            if( nJob == JOB_FORCEMASTER_HERO )1 s6 I$ w/ }% f+ y* @
                itemelem.m_dwItemId = II_ARM_ARM_SHI_ZEMBATO;
( v' f8 A+ e* \" q5 _0 g: u) z6 ^/ T
            ( ( CUser*)this)->CreateItem( &itemelem, &nID );5 g! g' m& Q, F, q- y4 X1 ]+ r
        }
0 J! I# k" K& O        g_UserMng.AddSetLevel( this, (WORD)m_nLevel );
1 H" b0 I3 A$ C2 [& o# y        ( (CUser*)this )->AddSetGrowthLearningPoint( m_nRemainGP );
( N0 ]- o! _8 l% {% `6 {. H        ( (CUser*)this )->AddSetExperience( GetExp1(), (WORD)m_nLevel, m_nSkillPoint, m_nSkillLevel );6 [( _! o' |' ]  [
        /*( (CUser*)this )->m_playTaskBar.InitTaskBarShorcutKind( SHORTCUT_SKILL );
/ ~% \  v/ {$ s6 w: R+ m$ M& n2 }        ( (CUser*)this )->AddTaskBar();*/3 Y; ?5 J2 \. L) ]3 _: ~; S
        ( (CUser*)this )->AddSetState( m_nStr, m_nSta, m_nDex, m_nInt, m_nRemainGP );  C  P. y* p+ c$ m7 [
#if __VER >= 13 // __HONORABLE_TITLE            // ′Tà?2 U: K  y. K& i) {# [5 K
        ((CUser*)this)->CheckHonorStat();/ O+ v- G' `0 M; w5 S
        ((CUser*)this)->AddHonorListAck();9 w# T1 b$ @1 m8 J
        g_UserMng.AddHonorTitleChange( this, m_nHonor);
$ l' A+ x# q  X4 o5 `#endif    // __HONORABLE_TITLE            // ′Tà?
& s  m9 J8 f# K# r7 u* F    }3 M5 k2 _* j0 W: b# ]% c/ g/ z- H5 n
#endif // __WORLDSERVER
/ N' n2 w' u7 ^}  * f& }% E7 ]- n( p  o% `
1 Q" `# b9 ?* G' \3 A2 }# i* ~
然后你进入functextcmd.cpp并添加以下
* n6 p6 s1 I0 o: W( |% {' ?* |0 U. H$ e( L2 r$ f' x* ?6 P: V5 V. K9 ?
代码:2 {- y4 ?! U9 `4 z' H8 n9 y
ON_TEXTCMDFUNC( TextCmd_say,                   "say",               "say",            "??",             "??",      TCM_SERVER, AUTH_GENERAL      , "?ó?èàó [/?í·é ??àìμe 3???]" )
7 M/ h0 T! h% g# x下面插入
9 y' Y1 R" l) u- ]8 BON_TEXTCMDFUNC( TextCmd_rebirth,              "rebirth",          "rebirth",             "?ú·1?÷??",       "?ú·1",    TCM_SERVER, AUTH_GENERAL   , "?ú·1?÷??" )  6 @+ h* L+ W. |3 }4 w4 L$ o

8 A! F. u) p8 m然后你去
8 K7 @4 J! }* k# b& `
! T$ R* e& y0 e4 b5 x代码:
( Y! e+ b/ u% h6 T& S+ I代码
$ g# ?' C9 b# O) lBOOL TextCmd_ClearPropose( CScanner & s )- K$ x  V4 y# h/ ?
{
# v+ @; V* d* w0 k7 o#ifdef __WORLDSERVER
% h  H+ V- D0 N! g  T5 Z5 a/ `0 |# V    CUser* pUser    = (CUser*)s.dwValue;
3 D( I5 c5 }7 {/ p! O( h    g_dpDBClient.SendClearPropose();% H4 K/ W- ^+ \$ j
#endif    // __WORLDSERVER; v% S5 N( S+ w0 X, c
    return TRUE;9 C; S6 R- c+ M2 D, r) f3 b* m, x2 F
}& `" c  Z9 @/ I4 M2 D( o  ^" Q* E
下面插入" K. q; V: H0 S2 z
BOOL TextCmd_rebirth( CScanner& scanner )
1 v* x8 Z' x) u# I% _{
; {  Q, A% U4 ~# `#ifdef __WORLDSERVER
: J$ q# ?" M3 Y$ `CUser *pUser;1 b8 R1 |( g0 L  o; }7 F( f+ g# k
pUser = (CUser*)scanner.dwValue;* D& s, v) A, p/ b
if(pUser->m_nLevel >= 150 && pUser->IsLegendHero())
  |( E! u- L- y, BpUser->InitLevelPumbaaa( pUser->m_nJob-16,60);. B& f, ~' A! t( e8 P6 y! G
else0 n: W' {! H' i% r
pUser->AddText("你还未达到重生条件!");
  y0 u8 C( f$ d+ F4 T#endif* V) z+ z+ d! p. ~$ e  i
return TRUE;
% K$ c4 k* _: r0 j" q/ W4 O}  
! W; k4 o- x7 h% ?
9 u. y% y( M+ O; p5 p: m0 p; H0 N
3 K; V2 _2 U8 Z* F
5 W$ y/ x5 A; s, [+ c1 e1 g+ p, ?5 ~1 y6 g& r. s* _
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-2 20:10 , Processed in 0.066173 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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