Necesito ayuda, escribí un código que asigna aleatoriamente una alianza al usuario, luego quería hacer una condición que ejecute una función si el usuario obtiene una determinada alianza, esto significa que si obtienes un marine en la siguiente línea, aparece un papel de la infantería de marina, o si obtienes ejército revolucionario aparece un papel del ejército revolucionario. Nota: estos roles también serían aleatorios como la alianza.
Este es mi código:
function capFirst(string) { return string.charAt(0).toUpperCase() + string.slice(1); } function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min)) + min; } function alliance(){ var alliance = ["Revolucionary Army","Marine","Pirate","Bounty Hunter","Cipher Pol","Royalist","Celestial Dragon"]; var alliance = capFirst(alliance[getRandomInt(0, alliance.length + 1)]); document.getElementById("alliance").innerHTML = alliance; } /* Rank */ if (true) { var alliance = 'Revolucionary Army'; function rank(){ var rank = ["Leader","Chief of Staff","Army Commander","Officer","Member","Associate"]; var rank = capFirst(rank[getRandomInt(0, rank.length + 1)]); document.getElementById("rank").innerHTML = rank; } } else { var alliance = 'Marine'; function rankmarine(){ var rank = ["Fleet Admiral","Admiral","Vice Admiral","Rear Admiral"]; var rank = capFirst(rank[getRandomInt(0, rank.length + 1)]); document.getElementById("rank").innerHTML = rank; } }Cree una función con la condición (if-else o switch) dentro de ella. Como esto
let alliance = ""; function capFirst(alli) { return alli.charAt(0).toUpperCase() +alli.slice(1); } function generateAlliance(){ var alliances = ["Revolucionary Army","Marine","Pirate","Bounty Hunter","Cipher Pol","Royalist","Celestial Dragon"]; alliance = capFirst(alliances[getRandomInt(0, alliance.length + 1)]); document.getElementById("alliance").innerHTML = alliance; } function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min)) + min; } /* Rank */ function assignRank(){ var ranks = []; if (alliance === "Revolucionary Army") { ranks = ["Leader","Chief of Staff", "Army", "Commander", "Officer", "Member", "Associate"]; } else if(alliance === "Marine") { ranks = ["Fleet Admiral","Admiral","Vice Admiral","Rear Admiral"]; } var rank = capFirst(ranks[getRandomInt(0, ranks.length + 1)]); document.getElementById("rank").innerHTML = rank; }enlace al violín: https://jsfiddle.net/wLoqejp5/