else
LoadStuff();
whichchoice=selected-NB_CAMPAIGN_MENU_ITEM-1-accountactive->getCampaignChoicesMade();
+ actuallevel=(accountactive->getCampaignChoicesMade()>0?campaignlevels[accountactive->getCampaignChoicesMade()-1].nextlevel[whichchoice]:0);
visibleloading=1;
stillloading=1;
- Loadlevel(campaignmapname[campaignchoicewhich[whichchoice]]);
+ Loadlevel(campaignlevels[actuallevel].mapname.c_str());
campaign=1;
mainmenu=0;
gameon=1;
if(mainmenu&&endgame==1)
mainmenu=10;
//go to level select after completing a campaign level
- if(campaign&&winfreeze&&mainmenu==0&&campaignchoosenext[campaignchoicewhich[whichchoice]]==1) {
+ if(campaign&&winfreeze&&mainmenu==0&&campaignlevels[actuallevel].choosenext==1) {
mainmenu=5;
gameon=0;
winfreeze=0;
fireSound();
flash();
- if(musictoggle){
+ if(musictoggle) {
OPENAL_SetFrequency(OPENAL_ALL, 0.001);
emit_stream_np(stream_menutheme);
pause_sound(leveltheme);
}
//draw weapon
- if(i==0||!player[0].dead||player[i].weaponactive!=-1)
+ if(i==0||!player[0].dead||player[i].weaponactive!=-1) {
if(player[i].drawkeydown&&!player[i].drawtogglekeydown||
player[i].num_weapons==2&&
player[i].weaponactive==-1&&
player[i].isIdle()||
player[0].dead&&
player[i].weaponactive!=-1&&
- i!=0){
- bool isgood=1;
+ i!=0) {
+ bool isgood=true;
if(player[i].weaponactive!=-1)
if(weapons[player[i].weaponids[player[i].weaponactive]].getType()==staff)
- isgood=0;
+ isgood=false;
if(isgood&&player[i].creature!=wolftype){
if(player[i].isIdle()&&player[i].num_weapons&&weapons[player[i].weaponids[0]].getType()==knife){
setAnimation(i,drawrightanim);
}
}
}
- //clean weapon
- if(player[i].isCrouch()&&
- weapons[player[i].weaponids[player[i].weaponactive]].bloody&&
- bloodtoggle&&
- player[i].onterrain&&
- player[i].num_weapons&&
- player[i].weaponactive!=-1&&
- player[i].attackkeydown&&
- bloodtoggle&&musictype!=stream_fighttheme) {
- if(weapons[player[i].weaponids[player[i].weaponactive]].getType()==knife)
- setAnimation(i,crouchstabanim);
- if(weapons[player[i].weaponids[player[i].weaponactive]].getType()==sword)
- setAnimation(i,swordgroundstabanim);
- player[i].hasvictim=0;
}
+
+ //clean weapon
+ if(player[i].weaponactive!=-1) {
+ if (player[i].isCrouch()&&
+ weapons[player[i].weaponids[player[i].weaponactive]].bloody&&
+ bloodtoggle&&
+ player[i].onterrain&&
+ player[i].num_weapons&&
+ player[i].attackkeydown&&
+ musictype!=stream_fighttheme) {
+ if(weapons[player[i].weaponids[player[i].weaponactive]].getType()==knife)
+ setAnimation(i,crouchstabanim);
+ if(weapons[player[i].weaponids[player[i].weaponactive]].getType()==sword)
+ setAnimation(i,swordgroundstabanim);
+ player[i].hasvictim=0;
+ }
+ }
if(!player[i].drawkeydown)
player[i].drawtogglekeydown=0;
XYZ absflatfacing;
- if(i==0){
+ if(i==0) {
absflatfacing=0;
absflatfacing.z=-1;
absflatfacing=DoRotation(absflatfacing,0,-rotation,0);
- }
- else absflatfacing=flatfacing;
+ } else
+ absflatfacing=flatfacing;
if(indialogue!=-1){
player[i].forwardkeydown=0;
fireSound(firestartsound);
- Loadlevel(campaignmapname[levelorder[accountactive->getCampaignChoicesMade()]]);
+ Loadlevel(campaignlevels[accountactive->getCampaignChoicesMade()].mapname.c_str());
fireSound();
// 0 = load next level
// 1 = go back to level select screen
// 2 = stealthload next level
- if(mainmenu==0&&winfreeze&&(campaignchoosenext[campaignchoicewhich[whichchoice]])==1){
- if(campaignnumnext[campaignchoicewhich[whichchoice]]==0)
+ if(mainmenu==0&&winfreeze&&(campaignlevels[actuallevel].choosenext)==1){
+ if(campaignlevels[actuallevel].nextlevel.empty())
endgame=1;
} else if(mainmenu==0&&winfreeze) {
- stealthloading = (campaignchoosenext[campaignchoicewhich[whichchoice]]==2);
+ stealthloading = (campaignlevels[actuallevel].choosenext==2);
if(!stealthloading){
fireSound(firestartsound);
if(!firstload)
LoadStuff();
whichchoice=0;
+ actuallevel=campaignlevels[actuallevel].nextlevel.front();
visibleloading=1;
stillloading=1;
- Loadlevel(campaignmapname[campaignchoicewhich[0]]);
+ Loadlevel(campaignlevels[actuallevel].mapname.c_str());
campaign=1;
mainmenu=0;
gameon=1;