⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 playerquest.cpp.svn-base

📁 ROSE的源代码。了解的自己研究,编译通过
💻 SVN-BASE
📖 第 1 页 / 共 5 页
字号:
                                                for(int i=0;i<5;i++)
                                                    myquestlc->items[i] = 0;
                                                    myquestlc->items[0] = 1;
                                                    myquestlc->items[1] = 1; 
                                                MyQuest.push_back( myquestlc );  
                                                ActiveQuest++;
                                            }
                                         }                                                    
                                    }   
                                    
                                }
                                break;   
                          case 115:
                                 {
                                    //For main quest (sticky liquid)
                                    myquest->items[1]++;
                                    
                                    if (myquest->items[0]==0&&myquest->items[1]==0)
                                    {
                                       myquest->items[1]=1;
                                    }
                                    
                                    if (myquest->items[1]==4)
                                    {
                                       myquest->items[0]++;
                                       myquest->items[1]=0;
                                       LogQuest("One More...");
                                    }
                                    
                                    if (myquest->thisquest->id==239&&myquest->items[0]==10)
                                    {
                                         //we deactivate 239 and activate 240
                                          myquest->active = false;
                                          ActiveQuest--; 
                                        CQuest* thisquestlc = GServer->GetQuestByID(240); 
                                        if(thisquestlc!=0)
                                        {                   
                                          if( ActiveQuest < 10 )
                                          {
                                                QUESTS* myquestlc = new QUESTS;
                                                assert(myquestlc);
                                                myquestlc->questid = thisquestlc->questid;
                                                myquestlc->thisquest = thisquestlc;        
                                                myquestlc->active = true;
                                                for(int i=0;i<5;i++)
                                                    myquestlc->items[i] = 0;
                                                    myquestlc->items[0] = 10;
                                                MyQuest.push_back( myquestlc );  
                                                ActiveQuest++;
                                            }
                                         }                                                    
                                    }   
                                    
                                }
                                break;   
                          case 116:
                                 {
                                    //For main quest (sharp stingers and animal claws)
                                    if (i<2)
                                    {
                                       myquest->items[0]++;
                                    }
                                    else
                                    {
                                        myquest->items[1]++;
                                    }
                                                                                                            
                                    if (myquest->thisquest->id==262&&myquest->items[0]==20&&myquest->items[1]==20)
                                    {
                                         //we deactivate 262 and activate 263
                                          myquest->active = false;
                                          ActiveQuest--; 
                                        CQuest* thisquestlc = GServer->GetQuestByID(263); 
                                        if(thisquestlc!=0)
                                        {                   
                                          if( ActiveQuest < 10 )
                                          {
                                                QUESTS* myquestlc = new QUESTS;
                                                assert(myquestlc);
                                                myquestlc->questid = thisquestlc->questid;
                                                myquestlc->thisquest = thisquestlc;        
                                                myquestlc->active = true;
                                                for(int i=0;i<5;i++)
                                                    myquestlc->items[i] = 0;
                                                    myquestlc->items[0] = 20;
                                                    myquestlc->items[1] = 20;
                                                MyQuest.push_back( myquestlc );  
                                                ActiveQuest++;
                                            }
                                         }                                                    
                                    }   
                                    
                                }
                                break;  
                          case 117:
                                 {
                                    //For main quest (color scales)
                                    myquest->items[0]++;
                                                                                                        
                                    if (myquest->thisquest->id==267&&myquest->items[0]==10)
                                    {
                                         //we deactivate 267 and activate 268
                                          myquest->active = false;
                                          ActiveQuest--; 
                                        CQuest* thisquestlc = GServer->GetQuestByID(268); 
                                        if(thisquestlc!=0)
                                        {                   
                                          if( ActiveQuest < 10 )
                                          {
                                                QUESTS* myquestlc = new QUESTS;
                                                assert(myquestlc);
                                                myquestlc->questid = thisquestlc->questid;
                                                myquestlc->thisquest = thisquestlc;        
                                                myquestlc->active = true;
                                                for(int i=0;i<5;i++)
                                                    myquestlc->items[i] = 0;
                                                    myquestlc->items[0] = 10;
                                                MyQuest.push_back( myquestlc );  
                                                ActiveQuest++;
                                            }
                                         }                                                    
                                    }   
                                    
                                }
                                break;  
                          case 118:
                                 {
                                    //For main quest (zombie)
                                    if (i==1)
                                    {
                                       LogQuest("We force the Zombie...");
                                       itemquest_script=myquest->thisquest->value3;
                                    }
                                    
                                }
                                break;
                          case 119:
                                 {
                                    //For main quest (smoulies...)                                    
                                    myquest->items[i]++;
                                    if (i==1||i==3)
                                    {
                                       myquest->items[1]=1;
                                    } 
                                                                        
                                    if (i==2&&myquest->items[2]==1)
                                    {                                    
                                       LogQuest("We force the Smoulies...");
                                       itemquest_script=myquest->thisquest->value3;                                       
                                    }
                                    
                                    if (myquest->items[2]>1)
                                    {
                                       myquest->items[2]=2;
                                    }
                                    
                                    
                                    if (myquest->thisquest->id==274&&myquest->items[0]==10&&myquest->items[1]==1)
                                    {
                                          //we deactivate 274 and activate 275
                                          myquest->active = false;
                                          ActiveQuest--; 
                                        CQuest* thisquestlc = GServer->GetQuestByID(275); 
                                        if(thisquestlc!=0)
                                        {                   
                                          if( ActiveQuest < 10 )
                                          {
                                                QUESTS* myquestlc = new QUESTS;
                                                assert(myquestlc);
                                                myquestlc->questid = thisquestlc->questid;
                                                myquestlc->thisquest = thisquestlc;        
                                                myquestlc->active = true;
                                                for(int i=0;i<5;i++)
                                                    myquestlc->items[i] = 0;  
                                                    myquestlc->items[0] = 10; 
                                                    myquestlc->items[1] = 1;                                                                                                         
                                                MyQuest.push_back( myquestlc );  
                                                ActiveQuest++;
                                            }
                                         }                                       
                                    } 
                                    
                                }
                                break;                                                                                                                                                                                                                           
                           case 4:
                                {
                                    //For pomics quest (226)
                                    myquest->items[i]++;
                                    
                                    if (myquest->thisquest->id==226&&myquest->items[0]==6)
                                    {
                                         //we deactivate 226 and activate 227
                                         LogQuest("You should have finished the slaughter, Special Pomics");
                                          myquest->active = false;
                                          ActiveQuest--; 
                                        CQuest* thisquestlc = GServer->GetQuestByID(227); 
                                        if(thisquestlc!=0)
                                        {                   
                                          if( ActiveQuest < 10 )
                                          {
                                                QUESTS* myquestlc = new QUESTS;
                                                assert(myquestlc);
                                                myquestlc->questid = thisquestlc->questid;
                                                myquestlc->thisquest = thisquestlc;        
                                                myquestlc->active = true;
                                                for(int i=0;i<5;i++)
                                                    myquestlc->items[i] = 0;  
                                                MyQuest.push_back( myquestlc );  
                                                ActiveQuest++;
                                            }
                                         }                                                    
                                    }                                                                    
                                }
                                break;                               
                           default:
                                   {           
                                    //car quest...
                                    if (myquest->thisquest->id==805)
                                      {
                                            myquest->items[3]++;
                                            if (myquest->items[3]==1||myquest->items[3]==17||myquest->items[3]==33)
                                            {
                                                LogQuest("An item should have diseapear");
                                                myquest->items[4]--;
                                            }
                
                                      }
                                      else
                                      {
                                        //rev.70 org code...
                                        if (myquest->thisquest->numitems[i] <=myquest->items[i])
                                        {
                                           bool found= false;
                                           int j=i+1;
                                           for (int j=i+1; j<5;j++)
                                           {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -