special raids can't do rehearsals over +10, so need to add extra case

checks
main
Mike Lee 3 years ago
parent 78faa4a471
commit dec7b5a9ab
  1. 2
      english.js
  2. 2
      japanese.js
  3. 17
      muni.js
  4. 5
      parkingcalc.html

@ -22,7 +22,7 @@ function English(str) {
return "Raid" return "Raid"
}break; }break;
case 25:{ //Selection for event type: RaidAnni case 25:{ //Selection for event type: RaidAnni
return "RaidAnni" return "Raid(Special)"
}break; }break;
case 7:{ //Label for team % selector (Include ":") case 7:{ //Label for team % selector (Include ":")
return "Event Team Bonus:" return "Event Team Bonus:"

@ -22,7 +22,7 @@ function Japanese(str) {
return "Raid" return "Raid"
}break; }break;
case 25:{ //Selection for event type: RaidAnni case 25:{ //Selection for event type: RaidAnni
return "RaidAnni" return "Raid(Special)"
}break; }break;
case 7:{ //Label for team % selector (Include ":") case 7:{ //Label for team % selector (Include ":")
return "Event Team Bonus:" return "Event Team Bonus:"

@ -97,6 +97,11 @@ const MAXSTEPS= 10000
document.getElementById("console").value="" document.getElementById("console").value=""
var interval = (type=="Medley")?15000:(type=="Poker/Slots")?4000:(type=="RaidAnni")?6000:10000 var interval = (type=="Medley")?15000:(type=="Poker/Slots")?4000:(type=="RaidAnni")?6000:10000
var special = (type=="RaidAnni");
if (special) {
bonus = 0;
isBonus = false;
}
var maxscore = Math.floor(Math.abs(Math.min(5000000,Math.max(0,Number(document.getElementById("maxscore").value))))/interval)*interval var maxscore = Math.floor(Math.abs(Math.min(5000000,Math.max(0,Number(document.getElementById("maxscore").value))))/interval)*interval
@ -336,7 +341,7 @@ const MAXSTEPS= 10000
document.getElementById("console").value+=ConvertVariables(LANGUAGE("%REHEARSAL%"),{step:step++,percent:0,epgain:gain,remaining:end-start})+"\n" document.getElementById("console").value+=ConvertVariables(LANGUAGE("%REHEARSAL%"),{step:step++,percent:0,epgain:gain,remaining:end-start})+"\n"
/*"Step "+(step++)+") Use Rehearsal w/0% team. EP +"+gain+". Remaining:"+(end-start)+" EP \n"*/ /*"Step "+(step++)+") Use Rehearsal w/0% team. EP +"+gain+". Remaining:"+(end-start)+" EP \n"*/
return false return false
} else } else if (!special)
{ {
var gain=end-start var gain=end-start
if (((gain-10)*10)>=0) { if (((gain-10)*10)>=0) {
@ -427,7 +432,10 @@ const MAXSTEPS= 10000
} }
} }
if (result) { if (result) {
var maxBonus = (isBonus)?2.0:1.6 var maxBonus = (isBonus)?2.0:1.6;
if (special) {
maxBonus = 0;
}
for (var j of GenerateBonusRange(maxBonus,isBonus)) { for (var j of GenerateBonusRange(maxBonus,isBonus)) {
result = TryMatchingRehearsal(j) result = TryMatchingRehearsal(j)
if (!result) { if (!result) {
@ -483,6 +491,9 @@ const MAXSTEPS= 10000
case "Raid":{ case "Raid":{
return LANGUAGE(24) return LANGUAGE(24)
}break; }break;
case "RaidAnni":{
return LANGUAGE(25)
}break;
} }
} }
@ -495,8 +506,6 @@ const MAXSTEPS= 10000
start:originalTarget,target:end,event:ConvertEvent(type),steps:(step-1),voltage:flameCount})+"\n\n"+document.getElementById("console").value start:originalTarget,target:end,event:ConvertEvent(type),steps:(step-1),voltage:flameCount})+"\n\n"+document.getElementById("console").value
/*"Calculating from "+originalTarget+" to "+end+" for event type "+type+"...\n\t(All games are done in Free Live)\n\nFound a park! "+(step-1)+" step"+Plural(step-1)+" and "+flameCount+" voltage required!\n\n"+document.getElementById("console").value*/ /*"Calculating from "+originalTarget+" to "+end+" for event type "+type+"...\n\t(All games are done in Free Live)\n\nFound a park! "+(step-1)+" step"+Plural(step-1)+" and "+flameCount+" voltage required!\n\n"+document.getElementById("console").value*/
} }
//document.getElementById("console").value+="Step "+(step++)+")"+start+" EP"+"\n"
step++
} }
} }

@ -34,10 +34,10 @@
<label for="Medley">Medley</label> <label for="Medley">Medley</label>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<input type="radio" id="Raid" name="type" value="Raid" /> <input type="radio" id="Raid" name="type" value="Raid" />
<label for="Raid">Raid</label> <label for="Raid">Raid (D4 FES)</label>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<input type="radio" id="RaidAnni" name="type" value="RaidAnni" /> <input type="radio" id="RaidAnni" name="type" value="RaidAnni" />
<label for="RaidAnni">Raid (1st Anni Only)</label> <label for="RaidAnni">Raid (Special)</label>
<hr /> <hr />
<label for="team">Event Team Bonus:</label> <label for="team">Event Team Bonus:</label>
&nbsp;&nbsp; &nbsp;&nbsp;
@ -92,6 +92,7 @@
</div> </div>
<sub><u>Tips</u></sub> <sub><u>Tips</u></sub>
<ul> <ul>
<li>When trying to park during Raid(Special) type events, if you get "Impossible" messages, try lowering the max free live score by 100k increments.</li>
<li class="translate19">Here's the Light on EX or Synchrogazer on Hard/EX difficulty are some of the highest scoring songs you can pick.</li> <li class="translate19">Here's the Light on EX or Synchrogazer on Hard/EX difficulty are some of the highest scoring songs you can pick.</li>
<li class="translate20">When you get close to the score you need in Free Live, purposely fail the song. Notes are worth 10% their normal value when you have 0 health so you can finish easily.</li> <li class="translate20">When you get close to the score you need in Free Live, purposely fail the song. Notes are worth 10% their normal value when you have 0 health so you can finish easily.</li>
<li class="translate21">The <b>"Flexible Team"</b> option gives you the fastest park, but at the expense of more voltage.</li> <li class="translate21">The <b>"Flexible Team"</b> option gives you the fastest park, but at the expense of more voltage.</li>

Loading…
Cancel
Save