栄達の神は待たない

とある大学生が自らの技術力の向上と知識を得るモチベーションUPのための自己満ブログ。

2月10,11日の進捗

2月10日。 天気:はれ 気温:寒め 湿度:知らん

スライム...すらいむ...スライムをつくりたい!

ってことでスライムを作ることにしました。

すらいむ育成計画

作るといってもリアルに魔物を生成することはできません。 なので、某「たま〇っち」のような育成ゲームを作り、そこでスライムを育てたいと思います。

うまくできれば、これを発展させて遺伝子的なのをイジイジして強化したり、ダンジョン生成して勇者と戦わせたりしてみたいなって思います。

計画書 第1弾

ゲーム名:GrowSlime 言語:Python(クラスの勉強も兼ねて、オブジェクト指向

ファイルは3つ。

  1. growSlime.py(main。ゲームを進行させる。)

  2. slime.py(スライムの生成、成長などスライム全般を管理する。)

  3. silmeData.xls(スライムの個体情報を記録する、Excelファイル)

スライムにはステータスとクラス(ロール)の概念を持たせる (のちにスキルみたいなのも実装したい)

スライムのステータス

  • Level
  • HP
  • MP
  • STR
  • VIT
  • DEX
  • INT
  • AGI

GrowSlimeのゲーム画面

f:id:utageer:20190212084954p:plain
GrowSlime 画面構成(案)

現在の状況(途中経過)

from random import *

class Slime:
    def __init__(self, name):
        self.name = name
        self.level = 1
        self.hp = 1
        self.mp = 0
        self.status = [0, 0, 0, 0, 0]
        #level
        #hp
        #mp
        #status (str, vit, dex, int, agi)

    def status_init(self):
        self.status = [ randint(1,10),
                        randint(1,10),
                        randint(1,10),
                        randint(1,10),
                        randint(1,10)
                        ]

    def level_up(self, grow_table):
        if grow_table == "dps":
            self.status[0] += 3
            self.status[1] += 2
            self.status[2] += 1
            self.status[3] += 1
            self.status[4] += 1
        elif grow_table == "tank":
            self.status[0] += 1
            self.status[1] += 4
            self.status[2] += 1
            self.status[3] += 1
            self.status[4] += 1
        elif grow_table == "healer":
            self.status[0] += 1
            self.status[1] += 1
            self.status[2] += 1
            self.status[3] += 3
            self.status[4] += 2

slime = []
for i in range(5):
    slime.append(Slime("sli" + str(i)))
    slime[i].status_init()
    print(slime[i].status)
slime_class = input("Select class!")
print(slime_class)
slime[0].level_up(slime_class)
for i in range(5):
    print(slime[i].status)


slime1 = Slime("Jhon")
slime1.status_init()
print(slime1.status)
slime1.level_up()
print(slime1.status)