Changeset 3152

Show
Ignore:
Timestamp:
02/05/2010 05:31:18 AM (5 weeks ago)
Author:
AlexisB
Message:

ADDED: Some more quest stuff from Mangos. Quests should no longer crash the client!

Location:
trunk/src/arcemu-world
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/arcemu-world/Quest.cpp

    r3151 r3152  
    3636        *data << uint32(2);                                                      // Unknown, always seems to be 2 
    3737        *data << uint32(qst->max_level);                                // Quest level 
     38    *data << uint32( 0 ); 
    3839 
    3940        if(qst->quest_sort > 0) 
     
    4950        *data << uint32(0);                                                      // Unknown (always 0) 
    5051        *data << uint32(qst->next_quest_id);                    // Next Quest ID 
     52    *data << uint32( 0 ); 
    5153        *data << uint32( sQuestMgr.GenerateRewardMoney( _player, qst ) );                        // Copper reward 
    5254        *data << uint32(qst->reward_money<0 ? -qst->reward_money : 0);             // Required Money 
  • trunk/src/arcemu-world/QuestMgr.cpp

    r3131 r3152  
    319319        //uint32 a = 0, b = 0, c = 1, d = 0, e = 1; 
    320320 
    321         *data << ( qst->next_quest_id ? uint32(1) : uint32(0) );// next quest shit 
     321        *data << uint8( qst->next_quest_id ? uint8( 1 ) : uint8( 0 ) );// next quest shit 
    322322        *data << uint32(0);                                                                             // maybe required money 
    323323 
     
    362362        *data << GenerateRewardMoney( plr, qst ); 
    363363        *data << qst->bonushonor; 
     364    *data << float( 0 ); 
    364365        *data << uint32(0); 
    365366        *data << qst->reward_spell; 
     
    367368        *data << qst->rewardtitleid; 
    368369        *data << qst->rewardtalents; 
     370    *data << uint32( 0 ); 
     371    *data << uint32( 0 ); 
     372 
     373    for( i = 0; i < 5; ++i ) 
     374        *data << uint32( 0 ); 
     375 
     376    for( i = 0; i < 5; ++i ) 
     377        *data << uint32( 0 ); 
     378 
     379    for( i = 0; i < 5; ++i ) 
     380        *data << uint32( 0 ); 
    369381} 
    370382 
     
    393405        } 
    394406 
    395         *data << uint32(1);                                             // Activate accept 
     407        *data << uint8(1);                                              // Activate accept 
    396408        *data << qst->suggestedplayers;                 // "Suggested players" 
    397409        *data << uint8(0);                                              // Added in 3.0.2, name or text(?) 
    398410        *data << uint8(0); //VLack: some 3.1.x thing 
    399  
     411    *data << uint8( 0 ); 
    400412 
    401413        ItemPrototype *ip; 
     
    428440 
    429441        *data << GenerateRewardMoney( plr, qst );       // Money reward 
     442    *data << uint32( 0 ); 
    430443        *data << qst->bonushonor;                                       // Honor reward 
     444    *data << float( 0 ); 
    431445        *data << qst->reward_spell;                                     // this is the spell (id) the quest finisher teaches you, or the icon of the spell if effect_on_player is not 0 
    432446        *data << qst->effect_on_player;                         // this is the spell (id) the quest finisher casts on you as a reward 
    433447        *data << qst->rewardtitleid;                            // Title reward (ID) 
    434448        *data << qst->rewardtalents;                            // Talent reward 
     449    *data << uint32( 0 ); 
     450    *data << uint32( 0 ); 
     451 
     452    for( i = 0; i < 5; ++i ) 
     453        *data << uint32( 0 ); 
     454 
     455    for( i = 0; i < 5; ++i ) 
     456        *data << uint32( 0 ); 
     457 
     458    for( i = 0; i < 5; ++i ) 
     459        *data << uint32( 0 ); 
    435460 
    436461        *data << qst->detailemotecount;                         // Amount of emotes (4?)