Kezdőoldal » Számítástechnika » Programozás » Hogyan adhatok hozzá plusz...

Hogyan adhatok hozzá plusz tényezőt?

Figyelt kérdés

Egy oldal segítségével sikerült létrehoznom egy harc folyamatot.

Szeretném, hogy a Playernek legyen egy strengthje, ami egy szintlépés után lehet több is.

pl.:

lv. 1: strength = 3

lv. 2: strength = 5

De úgy, hogy a játékosnak kell megadnia, hogy mennyivel legyen nagyobb, mert költheti másra is a szintlépési pontokat.


import random, time


class Character:

def __init__(self, health):

self.health = 100


def attack(self, other):

raise NotImplementedError


class Player(Character):

def __init__(self, health=100):

super().__init__(health)


def attack(self, other):

tamadas = input("Hogyan szeretnél támadni? ütés/rúgás/fejelés ")

if tamadas.lower() in ("ütés", "rúgás", "fejelés"):

other.health -= int(random.randint(1,100)/(random.uniform(0,1)*other.defense))

else:

print("Megbotlottál.")


class Enemy(Character):

def __init__(self, name, strength, defense, health):

super().__init__(health)

self.name = name

self.strength = strength

self.defense = defense


def attack(self, other):

print("A " + self.name + " támad.")

other.health -= int(self.strength * random.uniform(0.1,1.4))


def battle(player, enemy):

print("Egy {0.name} jön feléd.".format(enemy))

# harc

while player.health > 0 and enemy.health > 0:

player.attack(enemy)

print("A(z) {0.name} élete: {0.health}".format(enemy))

if enemy.health <= 0:

break

enemy.attack(player)

print("Az életed: {0.health}".format(player))


# vége

if player.health > 0:

print("Legyőzted az ellenfeled: {0.name}".format(enemy))

elif enemy.health > 0:

print("A(z) {0.name} legyőzőtt.".format(enemy))


if __name__ == '__main__':

enemies = [Enemy("Vaddisznó", 10, 10,100), Enemy("Farkas", 20, 15, 100)]

battle(Player(), random.choice(enemies))



Az elcsúszásokért bocsi, nem engedett linket tenni.

Link a pastebin-re vinne, a per jel után: /u5eiquyc



2016. jún. 26. 12:22
 1/4 A kérdező kommentje:
Azt elfelejtettem leírni, hogy PYTHON.
2016. jún. 26. 12:23
 2/4 anonim ***** válasza:

Vedd fel a strength tulajdonságot, vedd fel a növekedést, és:

Ha karakteralkotáskor kell beállítani a növekedést, akkor a konstruktorban adja lehetőséget a beállításra.

Ha szintenként lehet adni, akkor legyen egy addStrength metódusod, amit szintenként lehet hívni.

2016. jún. 26. 12:31
Hasznos számodra ez a válasz?
 3/4 A kérdező kommentje:

Ez a kódban hogy nézne ki? :)

Annyira nem vagyok egy hiperszuper profi.

2016. jún. 26. 12:49
 4/4 anonim ***** válasza:
0%

Azt gondoltuk, sokkal inkább egy youtubevideóból kopipésztelős vérpistikének tűnsz.

Tess:

[link]

2016. jún. 26. 16:07
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!