def singlePlayerDies(playerName, interactionNumber, mainSurface): options = [ "PLAYER falls off a cliff", "While trying to escape the arena, PLAYER falls down a hole", "PLAYER dies from an infection", "PLAYER is killed by RANDOMANIMAL" ] animals = ["a moose", "a wolf", "an eagle"] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER", playerName) selectedOption = selectedOption.replace( "RANDOMANIMAL", animals[random.randint(0, (len(animals) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def singlePlayerLives(playerName, interactionNumber, mainSurface, spiritGroup): everyoneOptions = [ "PLAYER thinks of home", "PLAYER looks at the deathmoon", "PLAYER cries", "PLAYER receives RANDOMITEM from a sponsor" ] notAquaOptions = ["PLAYER struggles to find water"] notIgnisOptions = ["PLAYER fails to start a fire"] notVentusOptions = ["PLAYER struggles to see in the darkness"] notTerraOptions = ["PLAYER searches for a shelter"] notVitaOptions = [ "PLAYER wishes they had a companion", "PLAYER licks their wounds" ] aquaOptions = ["PLAYER finds some water"] ignusOptions = ["PLAYER easily starts a fire"] ventusOptions = [ "PLAYER walks through the darkness because it feels right", "PLAYER creates a light to ward off beasts" ] terraOptions = ["PLAYER makes a shelter"] vitaOptions = ["PLAYER tends to their wounds"] items = [ "spinch", "bombs", "knives", "soap", "water", "a torch", "fresh food" ] if spiritGroup == 'Aqua': options = everyoneOptions + notIgnisOptions + notVentusOptions + notTerraOptions + notVitaOptions + aquaOptions selectedOption = options[random.randint(0, (len(options) - 1))] elif spiritGroup == 'Ignis': options = everyoneOptions + notAquaOptions + notVentusOptions + notTerraOptions + notVitaOptions + ignisOptions selectedOption = options[random.randint(0, (len(options) - 1))] elif spiritGroup == 'Ventus': options = everyoneOptions + notAquaOptions + notIgnisOptions + notTerraOptions + notVitaOptions + ventusOptions selectedOption = options[random.randint(0, (len(options) - 1))] elif spiritGroup == 'Terra': options = everyoneOptions + notAquaOptions + notIgnisOptions + notVentusOptions + notVitaOptions + terraOptions selectedOption = options[random.randint(0, (len(options) - 1))] elif spiritGroup == 'Vita': options = everyoneOptions + notAquaOptions + notIgnisOptions + notVentusOptions + notTerraOptions + vitaOptions selectedOption = options[random.randint(0, (len(options) - 1))] else: options = everyoneOptions + notAquaOptions + notIgnisOptions + notVentusOptions + notTerraOptions + notVitaOptions selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER", playerName) selectedOption = selectedOption.replace( "RANDOMITEM", items[random.randint(0, (len(items) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def allTwoDie(playerName1, playerName2, interactionNumber, mainSurface): options = [ "PLAYER1 gets into a fight with PLAYER2 but they both fall down a hole" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def twoPlayerSuicidePact(playerName1, playerName2, interactionNumber, mainSurface, nameList): if len(nameList) == 2: options = [ "PLAYER1 and PLAYER2 enter a suicide pact, the gamemakers need a victor" ] else: options = [ "PLAYER1 and PLAYER2 enter a suicide pact, but the gamemakers don't care" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def twoTryKillTeammate(playerName1, playerName2, interactionNumber, mainSurface): options = [ "PLAYER1 is about to kill PLAYER2, when they remember they're on the same team" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def allTwoLive(playerName1, playerName2, interactionNumber, mainSurface): options = [ "PLAYER1 chases PLAYER2 with RANDOMWEAPON", "PLAYER1 lets PLAYER2 into their shelter", "PLAYER1 distracts PLAYER2 with a laser pointer and runs away" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "a rock", "a pebble" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def oneKillsTwo(playerName1, playerName2, playerName3, interactionNumber, mainSurface): options = [ "PLAYER1 gets into a fight with PLAYER2 and PLAYER3, and kills both of them" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace("PLAYER3", playerName3) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def allThreeDie(playerName1, playerName2, playerName3, interactionNumber, mainSurface): options = [ "PLAYER1, PLAYER2, and PLAYER3 get into a fight and they all die" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace("PLAYER3", playerName3) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def firstKillsSecond(playerName1, playerName2, interactionNumber, mainSurface): options = [ "PLAYER1 kills PLAYER2 with RANDOMWEAPON", "PLAYER1 and PLAYER2 enter a suicide pact, PLAYER1 doesn't follow through", "PLAYER2 and PLAYER1 enter a suicide pact, PLAYER1 doesn't follow through" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def singlePlayerWaterDeaths(playerName, interactionNumber, mainSurface, spiritGroup): aquaOptions = [ "PLAYER uses their powers to find some water", "PLAYER went for a swim" ] otherOptions = ["PLAYER dies of thirst", "PLAYER drowned"] if spiritGroup == 'Aqua': selectedOption = aquaOptions[random.randint(0, (len(aquaOptions) - 1))] dead = 0 else: selectedOption = otherOptions[random.randint(0, (len(otherOptions) - 1))] dead = 1 selectedOption = selectedOption.replace("PLAYER", playerName) main.showInteractionText(selectedOption, interactionNumber, mainSurface) return dead
def singlePlayerLifeDeaths(playerName, interactionNumber, mainSurface, spiritGroup): vitaOptions = [ "PLAYER uses their powers to regain health", "PLAYER heals themself" ] otherOptions = ["PLAYER dies from their wounds", "PLAYER bleeds out"] if spiritGroup == 'Vita': selectedOption = vitaOptions[random.randint(0, (len(vitaOptions) - 1))] dead = 0 else: selectedOption = otherOptions[random.randint(0, (len(otherOptions) - 1))] dead = 1 selectedOption = selectedOption.replace("PLAYER", playerName) main.showInteractionText(selectedOption, interactionNumber, mainSurface) return dead
def allThreeLive(playerName1, playerName2, playerName3, interactionNumber, mainSurface): options = [ "PLAYER1,PLAYER2, and PLAYER3 run into each other and form an alliance", "PLAYER1 sees PLAYER2 and PLAYER3 fighting and walks away", "PLAYER1 meets PLAYER2 and PLAYER3 and spends the night with them" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace("PLAYER3", playerName3) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def singlePlayerFireDeaths(playerName, interactionNumber, mainSurface, spiritGroup): ignisOptions = ["PLAYER uses their powers to start a fire"] otherOptions = [ "PLAYER died of from the cold", "PLAYER couldn't start a fire and died" ] if spiritGroup == 'Ignis': selectedOption = ignisOptions[random.randint(0, (len(ignisOptions) - 1))] dead = 0 else: selectedOption = otherOptions[random.randint(0, (len(otherOptions) - 1))] dead = 1 selectedOption = selectedOption.replace("PLAYER", playerName) main.showInteractionText(selectedOption, interactionNumber, mainSurface) return dead
def singlePlayerDarknessDeaths(playerName, interactionNumber, mainSurface, spiritGroup): ventusOptions = [ "PLAYER uses their powers to make a light", "PLAYER makes a light to keep monsters away" ] otherOptions = ["PLAYER is killed in the darkness"] if spiritGroup == 'Ventus': selectedOption = ventusOptions[random.randint( 0, (len(ventusOptions) - 1))] dead = 0 else: selectedOption = otherOptions[random.randint(0, (len(otherOptions) - 1))] dead = 1 selectedOption = selectedOption.replace("PLAYER", playerName) main.showInteractionText(selectedOption, interactionNumber, mainSurface) return dead
def allFourLive(playerName1, playerName2, playerName3, playerName4, interactionNumber, mainSurface): options = [ "PLAYER1, PLAYER2, PLAYER3, and PLAYER4 share a shelter", "PLAYER1, PLAYER2, and PLAYER3 raid PLAYER4's shelter", "PLAYER1, PLAYER2, and PLAYER3 stalk PLAYER4", "PLAYER1, PLAYER2, PLAYER3, and PLAYER4 search for others", "PLAYER1, PLAYER2, PLAYER3, and PLAYER4 go fishing" ] weapons = [ "a knife", "a sword", "a gun", "a crossbow", "their powers", "a rock", "a pebble", "their claws", "their fangs" ] selectedOption = options[random.randint(0, (len(options) - 1))] selectedOption = selectedOption.replace("PLAYER1", playerName1) selectedOption = selectedOption.replace("PLAYER2", playerName2) selectedOption = selectedOption.replace("PLAYER3", playerName3) selectedOption = selectedOption.replace("PLAYER4", playerName4) selectedOption = selectedOption.replace( "RANDOMWEAPON", weapons[random.randint(0, (len(weapons) - 1))]) main.showInteractionText(selectedOption, interactionNumber, mainSurface)
def singlePlayerEarthDeaths(playerName, interactionNumber, mainSurface, spiritGroup): terraOptions = [ "PLAYER uses their powers to make a shelter", "PLAYER to hide from the elements", "PLAYER takes a nap in a shelter they made" ] otherOptions = [ "PLAYER died from exposure", "PLAYER couldn't find shelter and died" ] if spiritGroup == 'Terra': selectedOption = terraOptions[random.randint(0, (len(terraOptions) - 1))] dead = 0 else: selectedOption = otherOptions[random.randint(0, (len(otherOptions) - 1))] dead = 1 selectedOption = selectedOption.replace("PLAYER", playerName) main.showInteractionText(selectedOption, interactionNumber, mainSurface) return dead
def squirrel(nameList, mainSurface): #carnivorous squirrels print("SQUIRRELS") main.showTitleText("SQUIRRELS", mainSurface) playersToInteract = nameList[:] interactionNumber = 0 while len(playersToInteract) > 0: if len(playersToInteract) == 1: #only one player left to assign randomNumber = random.randint(1, 2) if len(nameList) == 1: randomNumber = 1 if randomNumber == 1: string = playersToInteract[0][0] + " survives the squirrels" main.showInteractionText(string, interactionNumber, mainSurface) else: string = "The squirrels defeat " + playersToInteract[0][0] main.showInteractionText(string, interactionNumber, mainSurface) nameList.remove(playersToInteract[0]) main.showImageLeft(playersToInteract[0][2], interactionNumber, mainSurface) playersToInteract = [] else: randomNumber1 = random.randint(1, 3) if randomNumber1 == 1: randomPlayer = playersToInteract[random.randint( 0, len(playersToInteract) - 1)] playersToInteract.remove(randomPlayer) string = randomPlayer[0] + " survives the squirrels" main.showInteractionText(string, interactionNumber, mainSurface) main.showImageLeft(randomPlayer[2], interactionNumber, mainSurface) elif randomNumber1 == 2: randomPlayer = playersToInteract[random.randint( 0, len(playersToInteract) - 1)] playersToInteract.remove(randomPlayer) string = "The squirrels defeat " + randomPlayer[0] main.showInteractionText(string, interactionNumber, mainSurface) main.showImageLeft(randomPlayer[2], interactionNumber, mainSurface) nameList.remove(randomPlayer) elif randomNumber1 == 3: randomPlayer1 = playersToInteract[random.randint( 0, len(playersToInteract) - 1)] playersToInteract.remove(randomPlayer1) randomPlayer2 = playersToInteract[random.randint( 0, len(playersToInteract) - 1)] playersToInteract.remove(randomPlayer2) main.showImageLeft(randomPlayer1[2], interactionNumber, mainSurface) main.showImageRight(randomPlayer2[2], interactionNumber, mainSurface) if randomPlayer1[3] == randomPlayer2[3]: string = randomPlayer1[ 0] + " was about to sacrifice " + randomPlayer2[ 0] + " to the squirrels, before remembering they're on the same team." main.showInteractionText(string, interactionNumber, mainSurface) else: string = randomPlayer1[0] + " sacrifices " + randomPlayer2[ 0] + " to the squirrels" main.showInteractionText(string, interactionNumber, mainSurface) nameList.remove(randomPlayer2) interactionNumber += 1 random.shuffle(nameList) return nameList, interactionNumber
def thorne(nameList,mainSurface): #THORNE ATTACKS print("THORNE") main.showTitleText("THE DARK GOD APPEARS",mainSurface) playersToInteract = nameList[:] interactionNumber = 0 while len(playersToInteract) > 0: if len(playersToInteract) == 1: #only one player left to assign randomNumber = random.randint(1,2) if len(nameList) == 1: randomNumber = 1 if playersToInteract[0][4] == 'Aqua': string = playersToInteract[0][0] + " is an Aqua, they were made for this." main.showInteractionText(string, interactionNumber,mainSurface) elif randomNumber == 1: string = playersToInteract[0][0] + " survives the flood" main.showInteractionText(string, interactionNumber,mainSurface) else: string = playersToInteract[0][0] + " drowns" main.showInteractionText(string, interactionNumber,mainSurface) nameList.remove(playersToInteract[0]) main.showImageLeft(playersToInteract[0][2], interactionNumber,mainSurface) playersToInteract = [] else: randomNumber1 = random.randint(1,3) if randomNumber1 == 1: randomPlayer = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer) string = randomPlayer[0] + " survives the flood" main.showInteractionText(string, interactionNumber,mainSurface) main.showImageLeft(randomPlayer[2], interactionNumber,mainSurface) elif randomNumber1 == 2: randomPlayer = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer) if randomPlayer[4] == 'Aqua': string = randomPlayer[0] + " is an Aqua, they were made for this." main.showInteractionText(string, interactionNumber,mainSurface) else: string = "The water defeats " + randomPlayer[0] main.showInteractionText(string, interactionNumber,mainSurface) nameList.remove(randomPlayer) main.showImageLeft(randomPlayer[2], interactionNumber,mainSurface) elif randomNumber1 == 3: randomPlayer1 = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer1) randomPlayer2 = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer2) main.showImageLeft(randomPlayer1[2], interactionNumber,mainSurface) main.showImageRight(randomPlayer2[2], interactionNumber,mainSurface) if randomPlayer1[3] == randomPlayer2[3]: string = randomPlayer1[0] + " was about to sacrifice " + randomPlayer2[0] + " to the water, before remembering they're on the same team." main.showInteractionText(string, interactionNumber,mainSurface) else: print(randomPlayer1[0] + " sacrifices " + randomPlayer2[0] + " to the water") string = randomPlayer1[0] + " sacrifices " + randomPlayer2[0] + " to the water" main.showInteractionText(string, interactionNumber,mainSurface) nameList.remove(randomPlayer2) interactionNumber += 1 random.shuffle(nameList) return nameList,interactionNumber
def fire(nameList,mainSurface): #FIRE print("FLASH FIRE") main.showTitleText("FLASH FIRE",mainSurface) playersToInteract = nameList[:] interactionNumber = 0 while len(playersToInteract) > 0: if len(playersToInteract) == 1: #only one player left to assign randomNumber = random.randint(1,2) if len(nameList) == 1: randomNumber = 1 if playersToInteract[0][4] == 'Ignis': string = playersToInteract[0][0] + " is an Ignis, they were made for this." main.showInteractionText(string, interactionNumber,mainSurface) elif randomNumber == 1: string = playersToInteract[0][0] + " survives the fire" main.showInteractionText(string, interactionNumber,mainSurface) else: string = playersToInteract[0][0] + " burns to death" main.showInteractionText(string, interactionNumber,mainSurface) nameList.remove(playersToInteract[0]) main.showImageLeft(playersToInteract[0][2], interactionNumber,mainSurface) playersToInteract = [] else: randomNumber1 = random.randint(1,3) if randomNumber1 == 1: randomPlayer = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer) string = randomPlayer[0] + " survives the fire" main.showInteractionText(string, interactionNumber,mainSurface) main.showImageLeft(randomPlayer[2], interactionNumber,mainSurface) elif randomNumber1 == 2: randomPlayer = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer) if randomPlayer[4] == 'Aqua': string = randomPlayer[0] + " is an Ignis, they were made for this." main.showInteractionText(string, interactionNumber,mainSurface) else: string = "The fire defeats " + randomPlayer[0] main.showInteractionText(string, interactionNumber,mainSurface) nameList.remove(randomPlayer) main.showImageLeft(randomPlayer[2], interactionNumber,mainSurface) elif randomNumber1 == 3: randomPlayer1 = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer1) randomPlayer2 = playersToInteract[random.randint(0,len(playersToInteract)-1)] playersToInteract.remove(randomPlayer2) main.showImageLeft(randomPlayer1[2], interactionNumber,mainSurface) main.showImageRight(randomPlayer2[2], interactionNumber,mainSurface) if randomPlayer1[3] == randomPlayer2[3]: string = randomPlayer1[0] + " was about to sacrifice " + randomPlayer2[0] + " to the flames, before remembering they're on the same team." main.showInteractionText(string, interactionNumber,mainSurface) else: string = randomPlayer1[0] + " sacrifices " + randomPlayer2[0] + " to the blaze" main.showInteractionText(string, interactionNumber,mainSurface) nameList.remove(randomPlayer2) interactionNumber += 1 random.shuffle(nameList) return nameList,interactionNumber