飞飞迷 > 脚本修改 > 任务文件propQuest.inc解析

任务文件propQuest.inc解析

来源:飞飞迷 发布时间:2016-11-19 浏览:

飞飞任务文件主要设计三个分别是
propQuest.inc任务内同定义
propQuest.txt.txt任务名字定义
definequest.h任务编号定义
其中主要涉及到奖励和惩罚主要是propQuest.inc这个文件控制
一个完整的任务例子

QUES_JBAHSDGUBQUGUVS

{
///////////////////////////標題部分////////////////////////////
SetTitle
(
IDS_PROPQUEST_INC_004308
);
///////////////////////////標題部分////////////////////////////
setting
{
SetHeadQuest( 6005 );
SetCharacter( "MaFl_Boboku" ); //波哥接任務
SetBeginCondCharacter("MaFl_Boboku",WI_WORLD_MADRIGAL,6000, 4000 ); //接受NPC的位置(可有可無)
SetEndCondCharacter( "MaFl_Boboku", WI_WORLD_MADRIGAL,6000, 4000, QUEST_DESTINATION_ID_0000 ); //完成NPC的位置(可有可無)
SetBeginCondLevel( 1, 100 ); //接任務的等級
SetEndCondLevel ( 1, 120 ); //完成任務時候的等級
SetBeginCondParty( 0, 0, 0, 0 ); //無效果
SetBeginCondJob( JOB_ELEMENTOR_HERO ); //接受任務的玩家職業
QuestItem( MI_AIBATT1, II_GEN_GEM_GEM_TWINKLESTONE, 3000000000, 1); //特殊的任務掉落
SetEndCondKillNPC( 0, MI_MIA1, 5, 8138, 3004, QUEST_DESTINATION_ID_0000 );   //(未知,怪物真實名稱,数量,x坐标,y坐标,未知)   
SetEndCondItem( -1, 0, -1, II_SYS_SYS_QUE_MAGICSSTONE01, 1 ); //給玩家物品
SetEndRemoveItem( 0, II_SYS_SYS_QUE_MAGICSSTONE01, 10 ); //扣除玩家物品
SetEndRewardGold( 1500, 2000 );                                               //任务完成后奖励的金币
SetEndRewardExp( 784, 2000 ); //任務完成後獎勵的經驗
SetEndRewardSkillPoint(40);                                                     // 这里完成任务可转职为40战士 50弓箭手 60圣职 90魔法师
SetDialog
(
QSAY_BEGIN1,                                         //首先对话NPC的任务说明01"
IDS_PROPQUEST_INC_004309
);
SetDialog
(
QSAY_BEGIN2,                                         //首先对话NPC的任务说明02"
IDS_PROPQUEST_INC_004310
);
SetDialog
(
QSAY_BEGIN3,                                         //首先对话NPC的任务说明03"
IDS_PROPQUEST_INC_004311        
);
SetDialog
(
QSAY_BEGIN_YES,                 //用户点是回答的话"
IDS_PROPQUEST_INC_004312
);
 
SetDialog
(
QSAY_BEGIN_NO,                  //用户否是回答的话"
IDS_PROPQUEST_INC_004313
);        
SetDialog
(
QSAY_END_COMPLETE1,            //玩家达到条件 完成任务对话1"
IDS_PROPQUEST_INC_004314 
);
SetDialog
(
QSAY_END_FAILURE1,             //如果任务有要求(例如需要什么物品和杀什么怪),玩家没有达到条件所回答的话"
IDS_PROPQUEST_INC_004315
);                      
}
}
 

任务代码说明

SetCharacter( "MaSa_JeongHwa" );                                                 " // 发布任务的NPC名称
SetEndCondCharacter( ""MaFl_Andy"", 6929, 3328,  QUEST_DESTINATION_ID_0000 );            // 完成任务后向谁(NPC)提交任务"
SetBeginCondLevel( 15, 15 );                                                 // 这是等级要求!
SetBeginCondParty( 0, 0, 0, 0 );                                                 // (未知)
SetBeginCondJob( JOB_VAGRANT );                                                     // 要求接受任务的职业
SetBeginCondPreviousQuest( 1, QUEST_VOCMER_BFTRN );               //这里是完成活动或事项才能按任务的意思QUEST_VOCMER_BFTRN这个是任务项目名称!
QuestItem( MI_AIBATT1, II_GEN_GEM_GEM_TWINKLESTONE, 3000000000, 1);                        // [杀这个编号的怪物1,爆的物品标号,机率,数量] 850000000,1 测试26只怪爆6个"
QuestItem( MI_AIBATT2, II_GEN_GEM_GEM_TWINKLESTONE, 3000000000, 1);                       // [杀这个编号的怪物2,爆的物品标号,机率,数量] 数字越少爆率越低"
SetEndCondItem( -1, 0, -1, II_SYS_SYS_QUE_YORN, 1, 7068, 4125, QUEST_DESTINATION_ID_0000 );  // [未知,未知,未知,需要的任务品编号,数量,怪物的Y坐标,X坐标,未知]"
SetEndRemoveItem( 0, II_GEN_GEM_GEM_TWINKLESTONE, 5 );                                  // 结合上面,需要5个物品才能交还任务"
SetBeginCondPreviousQuest( 1, QUEST_FIND_REDBANGT );                                         // 条件显示需要完成 QUEST_FIND_REDBANGT 这个编号的任务才能显示这个任务
SetEndCondKillNPC( 0, MI_MIA1, 20, 8138, 3004, QUEST_DESTINATION_ID_0000 );                  // 需要杀指定的怪物后才能完成任务(未知,怪物标号,数量,x坐标,y坐标,未知)    "
SetEndRewardItem( -1, 0, 0, II_GEN_FOO_COO_DORIVINIG, 5 );                                   // 任务完成后所给的物品奖励"
SetEndRewardGold( 1500, 1500 );                                                              // 任务完成后奖励的金币"
SetEndRewardExp( 784, 784 );     // 任务完成后奖励的经验
SetHeadQuest( 1992 ); //这句的1992就是活动任务的意思,! 6005是任务 只能做一次
SetEndRewardSkillPoint(40);                                                                  // 这里完成任务可转职为40战士 50弓箭手 60圣职 90魔法师
 
 
SetHeadQuest( 1992 ); 这句的1992就是活动任务的意思,! 6005是任务 只能做一次
SetRemove( bTureOrFalse ); // 如果是0不要删除(默认为1)
SetRepeat( bRepeat ) // 1 任务是一个无限循环任务
SetBeginSetAddGold( 1000 ); // 设置开始将增加的金币
SetBeginSetDisguise( MI_AIBATT2 ); // 设置伪装怪物(怪物ID)
"SetBeginSetAddItem( nIdx, nItemIdx, nNum ); // 添加物品(,,数量)"
  "SetBeginCondSex( nSex ); // nSex == -1,, SEX_MALE, SEX_FEMALE"
SetDialog
(
QSAY_BEGIN1,                                         //首先对话NPC的任务说明01"
IDS_PROPQUEST_INC_000712
);
SetDialog
(
QSAY_BEGIN2,                                         //首先对话NPC的任务说明02"
IDS_PROPQUEST_INC_000713
);
SetDialog
(
QSAY_BEGIN3,                                         //首先对话NPC的任务说明03"
IDS_PROPQUEST_INC_000714        
);
SetDialog
(
QSAY_BEGIN_YES,                 //用户点是回答的话"
IDS_PROPQUEST_INC_000715
);
 
SetDialog
(
QSAY_BEGIN_NO,                  //用户否是回答的话"
IDS_PROPQUEST_INC_000716
);        
SetDialog
(
QSAY_END_COMPLETE1,            //玩家达到条件 完成任务对话1"
IDS_PROPQUEST_INC_000718 
);
SetDialog
(
QSAY_END_COMPLETE2,            //玩家达到条件 完成任务对话2"
IDS_PROPQUEST_INC_000718
);
SetDialog
(
QSAY_END_FAILURE1,             //如果任务有要求(例如需要什么物品和杀什么怪),玩家没有达到条件所回答的话"
IDS_PROPQUEST_INC_000720
);                      

 

 

历史版本

  • V19.飞你莫属
  • 11-11-24V18.翱翔重生
  • 11-04-13V17.龙的逆袭
  • 10-12-13V16.神采飞扬
  • 10-04-16V15.羽化飞天
  • 09-11-04V14.翼之降临