{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyNb31s/GPCQBceZcec/YxTa"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"code","execution_count":9,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":477},"id":"ISwxRHDVQpsE","executionInfo":{"status":"error","timestamp":1696818896337,"user_tz":180,"elapsed":398,"user":{"displayName":"Horacio Laphitz","userId":"05970776226255252387"}},"outputId":"0628c844-c548-4151-ccbf-ac9e7d0aef7e"},"outputs":[{"output_type":"stream","name":"stdout","text":["MILEI:\n","-Fuerza :  1001\n","-Inteligencia :  102\n","-Defensa :  55\n","-Vida:  100\n"]},{"output_type":"error","ename":"AttributeError","evalue":"ignored","traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mAttributeError\u001b[0m                            Traceback (most recent call last)","\u001b[0;32m<ipython-input-9-e634c5327466>\u001b[0m in \u001b[0;36m<cell line: 62>\u001b[0;34m()\u001b[0m\n\u001b[1;32m     60\u001b[0m \u001b[0mmi_Personaje\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0matributos\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     61\u001b[0m \u001b[0mmi_enemigo\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mPersonaje\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"LA CASTA\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m250\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m33\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m100\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 62\u001b[0;31m \u001b[0mmi_Personaje\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0matacar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmi_enemigo\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     63\u001b[0m \u001b[0mmi_enemigo\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0matributos\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     64\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m<ipython-input-9-e634c5327466>\u001b[0m in \u001b[0;36matacar\u001b[0;34m(self, enemigo)\u001b[0m\n\u001b[1;32m     36\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     37\u001b[0m     \u001b[0;32mdef\u001b[0m \u001b[0matacar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0menemigo\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 38\u001b[0;31m         \u001b[0mdaño\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdaño\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0menemigo\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     39\u001b[0m         \u001b[0menemigo\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvida\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0menemigo\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__vida\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mdaño\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     40\u001b[0m         print(\n","\u001b[0;32m<ipython-input-9-e634c5327466>\u001b[0m in \u001b[0;36mdaño\u001b[0;34m(self, enemigo)\u001b[0m\n\u001b[1;32m     33\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     34\u001b[0m     \u001b[0;32mdef\u001b[0m \u001b[0mdaño\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0menemigo\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 35\u001b[0;31m         \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__fuerza\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0menemigo\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdefensa\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     36\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     37\u001b[0m     \u001b[0;32mdef\u001b[0m \u001b[0matacar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0menemigo\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;31mAttributeError\u001b[0m: 'Personaje' object has no attribute 'defensa'"]}],"source":["################################ ABSTRACCIÓN #################################\n","################################ ABSTRACCIÓN #################################\n","class Personaje:\n","    def __init__(self, nombre, fuerza, inteligencia, defensa, vida):\n","        self.nombre = nombre\n","        self.__fuerza = fuerza\n","        self.__inteligencia = inteligencia\n","        self.__defensa = defensa\n","        self.__vida = vida\n","        self.__aguante = fuerza * vida\n","        self.__turno = False\n","\n","    def atributos(self):\n","        print(self.nombre, \":\", sep=\"\")\n","        print(\"-Fuerza : \", self.__fuerza)\n","        print(\"-Inteligencia : \", self.__inteligencia)\n","        print(\"-Defensa : \", self.__defensa)\n","        print(\"-Vida: \", self.__vida)\n","\n","    def subir_nivel(self, fuerza, inteligencia, defensa):\n","        self.__fuerza = self.__fuerza + fuerza\n","        self.__inteligencia = self.__inteligencia + inteligencia\n","        self.__defensa = self.__defensa + defensa\n","\n","    def esta_vivo(self):\n","        return self.vida > 0\n","\n","    def morir(self):\n","        self.vida = 0\n","        print(self.nombre, \"ha muerto\")\n","\n","    # mecanismo por el que el personaje hace daño\n","\n","    def daño(self, enemigo):\n","        return self.__fuerza - enemigo.defensa\n","\n","    def atacar(self, enemigo):\n","        daño = self.daño(enemigo)\n","        enemigo.vida = enemigo.__vida - daño\n","        print(\n","            self.nombre,\n","            \"hizo la cantida de \",\n","            daño,\n","            \"puntos de daño a \",\n","            enemigo.nombre,\n","        )\n","        if enemigo.esta_vivo():\n","            print(\"La vida de \", enemigo.nombre, \"es\", enemigo.vida)\n","        else:\n","            enemigo.morir()\n","\n","\n","\n","\n","mi_Personaje = Personaje(\"MILEI\", 1000, 100, 55, 100)\n","# mi_Personaje.atributos()\n","mi_Personaje.subir_nivel(1, 2, 0)\n","# mi_Personaje.atributos()\n","#mi_Personaje.morir()\n","mi_Personaje.atributos()\n","mi_enemigo = Personaje(\"LA CASTA\", 250, 0, 33, 100)\n","mi_Personaje.atacar(mi_enemigo)\n","mi_enemigo.atributos()\n","\n","# print(mi_Personaje.daño(mi_enemigo))\n"]},{"cell_type":"code","source":[],"metadata":{"id":"tigDjhQkSDrN"},"execution_count":null,"outputs":[]}]}