Sfoglia il codice sorgente

Create randomization logic

master
Noëlle Anthony 4 anni fa
parent
commit
667e3ae7c1
1 ha cambiato i file con 54 aggiunte e 2 eliminazioni
  1. 54
    2
      metroidgen.py

+ 54
- 2
metroidgen.py Vedi File

@@ -1,3 +1,5 @@
import random

class MetroidState:
def __init__(self):
self.itemsCollected = {
@@ -263,12 +265,62 @@ class MetroidState:
kb = "Bosses Killed: {}".format(self.killedBosses())
rs = "Statues Raised: {}".format(self.raisedStatues())
sw = "Swimsuit?: {}".format(self.inBailey())
sl = "Start Location: {}".format(self.locations[self.startLocation])
dr = ""
return "\n".join([ic, mt, et, zb, kb, rs, sw, dr])
return "\n".join([ic, mt, et, zb, kb, rs, sw, sl, dr])

def randomize(self):
# Items
if random.randint(0,1) == 1:
self.toggleItem("Maru Mari")
if random.randint(0,1) == 1:
self.toggleItem("Bombs")
if random.randint(0,1) == 1:
self.toggleItem("Varia")
if random.randint(0,1) == 1:
self.toggleItem("High Jump Boots")
if random.randint(0,1) == 1:
self.toggleItem("Screw Attack")
if random.randint(0,1) == 1:
self.toggleItem("Long Beam")
beam = random.randint(0,2)
if beam == 1:
self.toggleItem("Ice Beam")
elif beam == 2:
self.toggleItem("Wave Beam")
# Missile Tanks
for i in range(21):
if random.randint(0,1) == 1:
self.toggleMissileTank(i+1)
# Energy Tanks
for i in range(8):
if random.randint(0,1) == 1:
self.toggleEnergyTank(i+1)
# Zebetites
for i in range(5):
if random.randint(0,1) == 1:
self.toggleZebetite(i+1)
# Bosses killed
if random.randint(0,1) == 1:
self.toggleKraid()
if random.randint(0,1) == 1:
self.toggleRidley()
if random.randint(0,1) == 1:
self.toggleMotherBrain()
# Statues raised
if not self.kraidKilled and random.randint(0,1) == 1:
self.toggleKraidStatue()
if not self.ridleyKilled and random.randint(0,1) == 1:
self.toggleRidleyStatue()
# Swimsuit
if random.randint(0,2) == 2:
self.toggleSwimsuit()
# Start Location
self.startLocation = random.randint(0,4)

def main():
gs = MetroidState()
gs.kraidKilled = True
gs.randomize()
print(gs.toString())

if __name__ == "__main__":

Loading…
Annulla
Salva