えくすとらんのブログ

いきあたりばったりでプログラミング 反撃しないで章

クエスト途中

バトルシーンに入ってから急にスピードダウンしています><

完全に修行不足ですが....

まあ自己満足でよいとします

何が難しいかというと....

関数読み込みの順番です

パソコン → 読んでからじゃないと答えられないよ
えくすとらん → う〜ん^^;ワカンネ

あとはなんだかグローバル変数がどうだとか....

しかしなんとか勇者は拳を振り上げモンスターに一撃を

加える所までやってきました

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import random
from time import sleep
class Syokki:

    def __init__(self,name,num,val,hp,maxdam,mindam,gold):
        self.name = name
        self.num = num
        self.val = val
        self.hp = hp
        self.maxdam = maxdam
        self.mindam = mindam
        self.gold = gold

##################################################################################################
#name=mobname num=mobnumber val=討伐経験値 hp=moblifepoint maxdam=mobmaxdamage mindam=mobmindamage #
#gold=会得ゴールド        name num val hp max min gold                                                                          #
##################################################################################################

ryoutenabe = Syokki("両手ナベンナー",1,3,5,1,3,3)
denkinabe = Syokki("エレキプレードン",2,3,7,1,3,4)
furaipandai = Syokki("フライパンタロン",3,6,6,2,5,2)
furaipancyu = Syokki("フライパンダ",4,7,8,3,7,3)
furaipansyo = Syokki("フライパンツァー",5,12,11,4,8,10)
furaipanfuta = Syokki("フライトン",6,14,14,8,12,7)
nabefuta = Syokki("ナベトン",7,20,16,4,14,18)
katatenabedai =Syokki("片手ナベンナー",8,20,18,10,15,18)
katatenabecyu = Syokki("片手ナベンナー哀",9,25,24,8,16,1)
katatenabesyo = Syokki("片手ナベンナー喜",10,20,26,8,16,50)
donburicyu = Syokki("ドンブリャー青",11,30,22,10,13,15)
donburisyo = Syokki("ドンブリャー赤",12,30,22,11,14,16)
ball = Syokki("タマボール",13,200,200,1,200,200)
zaru = Syokki("サルザルモンキー",14,38,40,25,30,37)
saradai = Syokki("ソーサラ魔",15,36,50,30,35,30)
saracyu = Syokki("ソーサラ天",16,36,60,30,38,32)
sarasyo = Syokki("ソーサラ破",17,36,65,28,40,35)
houcyou = Syokki ("ホー蝶",18,40,47,40,45,32)
manaita = Syokki("マナボード",19,50,52,30,50,32)
hashietc = Syokki("スプーン",20,50,65,45,55,30)
syamoji = Syokki("シャモ人",21,120,200,100,150,30)
pira = Syokki("ピーラーヒーラー",22,150,300,100,300,100)
shinktarai = Syokki("シンクタライオン",23,180,400,300,500,100)
akikan = Syokki("秋カンナ",24,190,600,500,800,150)
pura = Syokki("プラゴミン",25,50,120,200,300,100)
mu = Syokki("エクストラン",0,2000,2000,1000,5000,5000000)

nameliststage1 = [ryoutenabe.name,denkinabe.name,furaipandai.name,
furaipancyu.name,furaipansyo.name]
print(len(nameliststage1))
nameliststage2 =[furaipanfuta.name,nabefuta.name,katatenabedai.name,
katatenabecyu.name,katatenabesyo.name,donburicyu.name]

nameliststage3=[donburisyo.name,ball.name,zaru.name,saradai.name,saracyu.name,
sarasyo.name,houcyou.name,manaita.name]

nameliststage4 =[hashietc.name,syamoji.name,pira.name,shinktarai.name,
akikan.name,pura.name,mu.name]

valliststage1= [ryoutenabe.val,denkinabe.val,furaipandai.val,
furaipancyu.val,furaipansyo.val]
valliststage2= [furaipanfuta.val,nabefuta.val,katatenabedai.val,
katatenabecyu.val,katatenabesyo.val,donburicyu.val]
valliststage3= [donburisyo.val,ball.val,zaru.val,saradai.val,saracyu.val,
sarasyo.val,houcyou.val,manaita.val]
valliststage4= [hashietc.val,syamoji.val,pira.val,shinktarai.val,
akikan.val,pura.val,mu.val]

hpliststage1= [ryoutenabe.hp,denkinabe.hp,furaipandai.hp,
furaipancyu.hp,furaipansyo.hp]
hpliststage2= [furaipanfuta.hp,nabefuta.hp,katatenabedai.hp,
katatenabecyu.hp,katatenabesyo.hp,donburicyu.hp]
hpliststage3= [donburisyo.hp,ball.hp,zaru.hp,saradai.hp,saracyu.hp,
sarasyo.hp,houcyou.hp,manaita.hp]
hpliststage4= [hashietc.hp,syamoji.hp,pira.hp,shinktarai.hp,
akikan.hp,pura.hp,mu.hp]

print("もう何日ここをさまよっただろう....")
#sleep(2)
print("・・・・・")
#sleep(2)
for i in range(3):
    print("えええ.....まわりを見渡すとそこはただ広い平原だった........")
    #sleep(2)
print(" ")
print(" ")
print("勇者の名前を入れてください")
yusya_name = input()
print(" ")
#sleep(2)
print("私の名前は "+ yusya_name+ " 。")
#sleep(2)
print("しかしまわりの状況がわからないのは不安である....")
#sleep(2)
print("....しばらく歩く事にしよう")
for i in range(3):
    print(" ")
#sleep(3)
print("******************************")
print("******キッチンクエスト(仮)******     by xtoran")
print("******************************")
for i in range(3):
    print(" ")
#sleep(2)

print(yusya_name+ "のステータスを抽選中............")
#sleep(3)
class yusya_fastste:

    def __init__(self,num,val,hp,gold,mindam,maxdam):

        self.num = num
        self.val = val
        self.hp = hp
        self.gold = gold
        self.mindam = mindam
        self.maxdam = maxdam

yusya1 = yusya_fastste(1,0,5,200,1,10)
yusya2 = yusya_fastste(2,0,6,180,1,9)
yusya3 = yusya_fastste(3,0,7,150,1,8)
yusya4 = yusya_fastste(4,0,8,80,1,7)
yusya5 = yusya_fastste(5,0,9,70,1,6)
yusya6 = yusya_fastste(6,0,10,60,1,5)
yusya7 = yusya_fastste(7,0,11,50,1,4)
yusya8 =yusya_fastste(8,0,12,40,1,3)
yusya9 =yusya_fastste(9,0,13,30,1,2)
yusya10 = yusya_fastste(10,0,14,20,1,1)

yusya_hplist = [yusya1.hp,yusya2.hp,yusya3.hp,yusya4.hp,yusya5.hp,
yusya6.hp,yusya7.hp,yusya8.hp,yusya9.hp,yusya10.hp]

yusya_goldlist = [yusya1.gold,yusya2.gold,yusya3.gold,yusya4.gold,
yusya5.gold,yusya6.gold,yusya7.gold,yusya8.gold,yusya9.gold,yusya10.gold]

yusya_maxdamlist = [yusya1.maxdam,yusya2.maxdam,yusya3.maxdam,yusya4.maxdam,
yusya5.maxdam,yusya6.maxdam,yusya7.maxdam,yusya8.maxdam,
yusya9.maxdam,yusya10.maxdam]

yusya_mindamlist = [yusya1.mindam,yusya2.mindam,yusya3.mindam,yusya4.mindam,
yusya5.mindam,yusya6.mindam,yusya7.mindam,yusya8.mindam,
yusya9.mindam,yusya10.mindam]

nameval = len(yusya_name)
for i in range(nameval):
    steval = random.randint(1,10)

my_hp = yusya_hplist[steval-1]
my_gold = yusya_goldlist[steval-1]
my_mindam = yusya_mindamlist[steval-1]
my_maxdam = yusya_maxdamlist[steval-1]
my_lv = 1
my_val =0

print(" ")
print(yusya_name+"のステータスは")
print("(LV):"+str(my_lv)+ "(経験値):"+str(my_val)+ " "+
"(HP):" + str(my_hp) + " "+ "(gold):"+ str(my_gold) +" "+  "(mindam):"
+str(my_mindam)+" "+  "(maxdam):"+ str(my_maxdam)+"になりました。")

saikorolist = ["足が痛い","歌をうたってみた","道草を食べた..すぐにはきだした。",
"何も考えられないので空をみあげた。","川をみつけた","石をなげてみた","険しい山だ",
"屈伸運動をした","傾いた像がある","火をおこしたい","花のようなものが咲いている",
"コンビニないかな...","遠くでガンッとゆう音がした","大木がある","苦笑してみた",
"なにか獣臭い","遠くで何かが光った","大声を出してみた","ちかくでガサガサ音がする",
"ちょっと寒い","背中がかゆい","知らない間に足のツメが剥がれている","ガスの元栓占めたかなぁ",
"涙がでてきた",]
#print(len(saikorolist))
#sleep(1)

def fight():
    print("勇者の攻撃")
#print(choiceno1)
    hp = hpliststage1[choiceno1]
    print(hp)
    hit = random.randint(my_mindam,my_maxdam)
    print(choicemob1+"に"+str(hit) + "のダメージをあたえた")
    zanhp = int(hp)-int(hit)
    print(choicemob1+"の残りHPは"+ str(zanhp)+"だ")


def eventlot():
    global evelot
    for i in range(saikoro):
        evelot = random.randint(1,1000)

    if evelot <= 400 and yusya_hosu <=400:
        global choicemob1
        global fight_choice
        global hp
        global choiceno1
        choiceno1 = random.randint(0,6)
        choicemob1 = nameliststage1[int(choiceno1)]
        hp = hpliststage1[int(choiceno1)]
        print(choicemob1+"があらわれた")
        fight_choice = input("たたかいますか?:")
        if fight_choice == "y":
            return fight()
        elif fight_choice =="n":
            print("命からがら逃げ延びた。")
    else:
        print(random.choice(saikorolist))
        return sugoroku()
yusya_hosu = 0
def sugoroku():
    print("サイコロを振りますか?")
    sai = input("y or n :")
    if sai == "y":
        global saikoro
        global yusya_hosu
        saikoro = random.randint(1,6)
        yusya_hosu = yusya_hosu+int(saikoro)
        print("サイコロの目は"+ str(saikoro)+ "です")
        print("歩数は"+str(yusya_hosu) +"です")
        return eventlot()
    elif sai == "n":
        return sugoroku()
    else:
        print("y or nだよ")
        return sugoroku()
def startchoice():
    print("なにをしますか?")
    print("1:ゲームを始める")
    start_sentaku = input(":")
    if start_sentaku == "1":
        print("ゲームを初めます")
        return sugoroku()
    else:
        print("no")
        return startchoice()

startchoice()



input()

こんな感じになってます

次はモンスターのターンになりあとはどちらかのHPが0になるまでループ。

終わったアトは報酬(ゴールド)や経験値の分配やそれに伴うLVアップ等。

歩数によるLVの選択もまだ実装してません

できれば歩数によるカウントでストーリー(秋カンナさんを序盤から登場させる予定です。カンナさんのパラメータを見ただけでストーリーが思い浮かびそうです)


をオープンなんてできたら

面白いとおもいますが...えくすとらんの技術でできるのか?

まぁ少しずつ考えましょう

追記

今やってみたら....

モンスターHP マイナス表示でできますね^^;

まぁ当然と行ったら当然,正常な挙動です.

while
    if文を使って分岐させなきゃ....

時間をとらないと.... しかし貧乏暇なし><












いきあたりばったりでプログラミング 少しずつで章

そしてモンスターと遭遇(名前はまだない)

ようやく戦闘準備の準備ができようとしています

毎日ちょっとずつしかできませんが締切があるわけでもなし

まったりと楽しんで進めていきます

コードはツッコミどころ満載(自分ではツッコむところすらもわかりません><)

がひとまずはエラーがでなければいいなぁなんておもっているところです

ゲームは只今サイコロをふってイベント or mobを表示したところまで

やってきました

mobのところは歩数によって出現モンスターを振り分けたいななんておもっているので

moblistをLV別に分けていけばいいのかなぁと考えているところです

密かにmob出現のイラストカットインや音とか出来たら.....

いいのにな......とか....

これはもう少しあとで考えることにします

今日はベタ貼り自分用ウエイト無しバージョンです



#!/usr/bin/python3
# -*- coding: utf-8 -*-

import random
from time import sleep
class Syokki:

    def __init__(self,name,num,val,hp,maxdam,mindam,gold):
        self.name = name
        self.num = num
        self.val = val
        self.hp = hp
        self.maxdam = maxdam
        self.mindam = mindam
        self.gold = gold

##################################################################################################
#name=mobname num=mobnumber val=討伐経験値 hp=moblifepoint maxdam=mobmaxdamage mindam=mobmindamage #
#gold=会得ゴールド        name num val hp max min gold                                                                          #
##################################################################################################

ryoutenabe = Syokki("両手ナベンナー",1,3,5,1,3,3)
denkinabe = Syokki("エレキプレードン",2,3,7,1,3,4)
furaipandai = Syokki("フライパンタロン",3,6,6,2,5,2)
furaipancyu = Syokki("フライパンダ",4,7,8,3,7,3)
furaipansyo = Syokki("フライパンツァー",5,12,11,4,8,10)
furaipanfuta = Syokki("フライトン",6,14,14,8,12,7)
nabefuta = Syokki("ナベトン",7,20,16,4,14,18)
katatenabedai =Syokki("片手ナベンナー",8,20,18,10,15,18)
katatenabecyu = Syokki("片手ナベンナー哀",9,25,24,8,16,1)
katatenabesyo = Syokki("片手ナベンナー喜",10,20,26,8,16,50)
donburicyu = Syokki("ドンブリャー青",11,30,22,10,13,15)
donburisyo = Syokki("ドンブリャー赤",12,30,22,11,14,16)
ball = Syokki("タマボール",13,200,200,1,200,200)
zaru = Syokki("サルザルモンキー",14,38,40,25,30,37)
saradai = Syokki("ソーサラ魔",15,36,50,30,35,30)
saracyu = Syokki("ソーサラ天",16,36,60,30,38,32)
sarasyo = Syokki("ソーサラ破",17,36,65,28,40,35)
houcyou = Syokki ("ホー蝶",18,40,47,40,45,32)
manaita = Syokki("マナボード",19,50,52,30,50,32)
hashietc = Syokki("スプーン",20,50,65,45,55,30)
syamoji = Syokki("シャモ人",21,120,200,100,150,30)
pira = Syokki("ピーラーヒーラー",22,150,300,100,300,100)
shinktarai = Syokki("シンクタライオン",23,180,400,300,500,100)
akikan = Syokki("秋カンナ",24,190,600,500,800,150)
pura = Syokki("プラゴミン",25,50,120,200,300,100)
mu = Syokki("エクストラン",0,2000,2000,1000,5000,5000000)


syokkilist = [ "終了",ryoutenabe.name,denkinabe.name,furaipandai.name,
    furaipancyu.name,furaipansyo.name,furaipanfuta.name,nabefuta.name,
    katatenabedai.name,katatenabecyu.name,katatenabesyo.name,donburicyu.name,
    donburisyo.name,ball.name,zaru.name,saradai.name,saracyu.name,
    sarasyo.name,houcyou.name,manaita.name,hashietc.name,syamoji.name,
    pira.name,shinktarai.name,akikan.name,pura.name,mu.name]

syokkivallist= ["no",ryoutenabe.val,denkinabe.val,furaipandai.val,
    furaipancyu.val,furaipansyo.val,furaipanfuta.val,nabefuta.val,
    katatenabedai.val,katatenabecyu.val,katatenabesyo.val,donburicyu.val,
    donburisyo.val,ball.val,zaru.val,saradai.val,saracyu.val,
    sarasyo.val,houcyou.val,manaita.val,hashietc.val,syamoji.val,
    pira.val,shinktarai.val,akikan.val,pura.val,mu.val]

print("もう何日ここをさまよっただろう....")
#sleep(2)
print("・・・・・")
#sleep(2)
for i in range(3):
    print("えええ.....まわりを見渡すとそこはただ広い平原だった........")
    #sleep(2)
print(" ")
print(" ")
print("勇者の名前を入れてください")
yusya_name = input()
print(" ")
#sleep(2)
print("私の名前は "+ yusya_name+ " 。")
#sleep(2)
print("しかしまわりの状況がわからないのは不安である....")
#sleep(2)
print("....しばらく歩く事にしよう")
for i in range(3):
    print(" ")
#sleep(3)
print("******************************")
print("******キッチンクエスト(仮)******     by xtoran")
print("******************************")
for i in range(3):
    print(" ")
#sleep(2)

print(yusya_name+ "のステータスを抽選中............")
#sleep(3)
class yusya_fastste:

    def __init__(self,num,val,hp,gold,mindam,maxdam):

        self.num = num
        self.val = val
        self.hp = hp
        self.gold = gold
        self.mindam = mindam
        self.maxdam = maxdam

yusya1 = yusya_fastste(1,0,5,200,1,10)
yusya2 = yusya_fastste(2,0,6,180,1,9)
yusya3 = yusya_fastste(3,0,7,150,1,8)
yusya4 = yusya_fastste(4,0,8,80,1,7)
yusya5 = yusya_fastste(5,0,9,70,1,6)
yusya6 = yusya_fastste(6,0,10,60,1,5)
yusya7 = yusya_fastste(7,0,11,50,1,4)
yusya8 =yusya_fastste(8,0,12,40,1,3)
yusya9 =yusya_fastste(9,0,13,30,1,2)
yusya10 = yusya_fastste(10,0,14,20,1,1)

yusya_hplist = [yusya1.hp,yusya2.hp,yusya3.hp,yusya4.hp,yusya5.hp,
yusya6.hp,yusya7.hp,yusya8.hp,yusya9.hp,yusya10.hp]

yusya_goldlist = [yusya1.gold,yusya2.gold,yusya3.gold,yusya4.gold,
yusya5.gold,yusya6.gold,yusya7.gold,yusya8.gold,yusya9.gold,yusya10.gold]

yusya_maxdamlist = [yusya1.maxdam,yusya2.maxdam,yusya3.maxdam,yusya4.maxdam,
yusya5.maxdam,yusya6.maxdam,yusya7.maxdam,yusya8.maxdam,
yusya9.maxdam,yusya10.maxdam]

yusya_mindamlist = [yusya1.mindam,yusya2.mindam,yusya3.mindam,yusya4.mindam,
yusya5.mindam,yusya6.mindam,yusya7.mindam,yusya8.mindam,
yusya9.mindam,yusya10.mindam]

nameval = len(yusya_name)
for i in range(nameval):
    steval = random.randint(1,10)

my_hp = yusya_hplist[steval-1]
my_gold = yusya_goldlist[steval-1]
my_mindam = yusya_mindamlist[steval-1]
my_maxdam = yusya_maxdamlist[steval-1]
my_lv = 1
my_val =0

print(" ")
print(yusya_name+"のステータスは")
print("(LV):"+str(my_lv)+ "(経験値):"+str(my_val)+ " "+
"(HP):" + str(my_hp) + " "+ "(gold):"+ str(my_gold) +" "+  "(mindam):"
+str(my_mindam)+" "+  "(maxdam):"+ str(my_maxdam)+"になりました。")

saikorolist = ["足が痛い","歌をうたってみた","道草を食べた..すぐにはきだした。",
"何も考えられないので空をみあげた。","川をみつけた","石をなげてみた","険しい山だ",
"屈伸運動をした","傾いた像がある","火をおこしたい","花のようなものが咲いている",
"コンビニないかな...","遠くでガンッとゆう音がした","大木がある","苦笑してみた",
"なにか獣臭い","遠くで何かが光った","大声を出してみた","ちかくでガサガサ音がする",
"ちょっと寒い","背中がかゆい","知らない間に足のツメが剥がれている","ガスの元栓占めたかなぁ",
"涙がでてきた",]
#print(len(saikorolist))
#sleep(1)
def startchoice():
    print("なにをしますか?")
    print("1:ゲームを始める")
    start_sentaku = input(":")
    if start_sentaku == 1:
        print("ゲームを初めます")
        sugoroku()
startchoice()

def sugoroku():
    print("サイコロを振りますか?")
    sai = input("y or n :")
    if sai == "y":
        global saikoro
        global yusya_hosu
        yusya_hosu = int(0)
        saikoro = random.randint(1,6)
        a = yusya_hosu+int(saikoro)
        print("サイコロの目は"+ str(saikoro)+ "です")
        print("歩数は"+str(a) +"です")
    elif sai == "n":
        startchoice()
        sugoroku()

    else:
        print("y or nだよ")
        sugoroku()
sugoroku()





def eventlot():
    global evelot
    for i in range(saikoro):
        evelot = random.randint(1,1000)
    if evelot <= 400:
        print("mob"+"があらわれた")
    else:
        print(random.choice(saikorolist))
eventlot()


input()

どっか散歩にいってこよ....


いきあたりばったりでプログラミング 混沌de章

こんなはずでは...

当初 考えていたのは自分でつけた名前の敵が出る。倒す。

ぐらいの数行で終わる感じにしたかったのですが...

こんなのあったらちょっとおもしろいかも.....

なんてことをちょこちょこ考えていたら

170行を超えてきてしまっていました^^;

自分的にはこれからが面白いところです(しかし難しいのでできるかどうかは....)

当初 エリア別で選択してMOBの強さを分けようとおもっていたのですが

サイコロを振って歩数にプラスしてゆく方法になった(した)ので

歩数がすすめば進むほど強い敵になるように設定してゆけばよいのかな

なんておもっています

ターミナルで進む物語ですが一生懸命に打ち込んだテキストの表示が早すぎで

趣に欠けるという事もあり調べてみると

from time import sleep

timeモジュールの中にsleepというのがありこれでウエイトを

付けることにしました

なんかいい感じになってきたんじゃないか....

今の所サイコロの目を出す所までできているのでこれを

なんとかしてコメント or 戦闘 に振り分けたいなぁ

なんておもっています あとはメインストーリーを考えて....

ってどうやってだすんだろ....




できるかなぁ....

いきあたりばったりでプログラミング 勇者ノ章

勇者降臨

今日はとりあえず勇者のステータスを作ってみました

名前によって変化するようにしてみました

簡単なRPG ですのでHP.マックスダメージ.マインダメージ

位でいこうとおもいます

ああ

いま 重大な事に気づきました   orz

このゲームHPを戻すすべを考えていません

.....むむむ ヒールか薬草を実装しなければならないかもしれません

いや もしくは戦いが起こるたびに....
いや やはり自分で戻したい

今の所ゴールドは飾りです

ゴールドなど持っていても役に立たない世界なのです

捨てることもできませんのでどんどん貯まっていくのです

とりあえずステータス表示までを.....



こんな感じになってます ちょっと出てきますノノ

キッチンクエスト(仮)できるかなぁ

mobのパラメータをいれてみた

仕事が終わったので...

パラメーターをそそくさとつくってみました

えいっ

class Syokki:

    def __init__(self,name,num,val,hp,maxdam,mindam,gold):
        self.name = name
        self.num = num
        self.val = val
        self.hp = hp
        self.maxdam = maxdam
        self.mindam = mindam
        self.gold = gold

##################################################################################################
#name=mobname num=mobnumber val=討伐経験値 hp=moblifepoint maxdam=mobmaxdamage mindam=mobmindamage #
#gold=会得ゴールド        name num val hp max min gold                                                                          #
##################################################################################################

ryoutenabe = Syokki("両手ナベンナー",1,3,5,1,1,3)
denkinabe = Syokki("エレキプレードン",2,3,7,1,3,4)
furaipandai = Syokki("フライパンタロン",3,6,6,2,5,2)
furaipancyu = Syokki("フライパンダ",4,7,8,3,7,3)
furaipansyo = Syokki("フライパンツァー",5,12,11,4,8,10)
furaipanfuta = Syokki("フライトン",6,14,14,8,12,7)
nabefuta = Syokki("ナベトン",7,20,16,4,14,18)
katatenabedai =Syokki("片手ナベンナー",8,20,18,10,15,18)
katatenabecyu = Syokki("片手ナベンナー哀",9,25,24,8,16,1)
katatenabesyo = Syokki("片手ナベンナー喜",10,20,26,8,16,50)
donburicyu = Syokki("ドンブリャー青",11,30,22,10,13,15)
donburisyo = Syokki("ドンブリャー赤",12,30,22,11,14,16)
ball = Syokki("タマボール",13,200,200,1,200,200)
zaru = Syokki("サルザルモンキー",14,38,40,25,30,37)
saradai = Syokki("ソーサラ魔",15,36,50,30,35,30)
saracyu = Syokki("ソーサラ天",16,36,60,30,38,32)
sarasyo = Syokki("ソーサラ破",17,36,65,28,40,35)
houcyou = Syokki ("ホー蝶",18,40,47,40,45,32)
manaita = Syokki("マナボード",19,50,52,30,50,32)
hashietc = Syokki("スプーン",20,50,65,45,55,30)
syamoji = Syokki("シャモ人",21,120,200,100,150,30)
pira = Syokki("ピーラーヒーラー",22,150,300,100,300,100)
shinktarai = Syokki("シンクタライオン",23,180,400,300,500,100)
akikan = Syokki("秋カンナ",24,190,600,500,800,150)
pura = Syokki("プラゴミン",25,50,120,200,300,100)
mu = Syokki("エクストラン",0,2000,2000,1000,5000,5000000)

このしたは食器をあらうプログラムと同じものですので

いま時点で使うと経験値順になって出力します^^

コメントは自分で見ながら入れるために書いたものですのでいらなくなったら

けそうかなぁ

上から弱い順になってます

タマボールを某メ◯ルスライムのようなレアmobに位置づけています

遭遇確率は設定しないつもり?ですので

LVが低いうちに出会ったら生きるか死ぬかの攻撃力を設定してみました^^

最低攻撃力1 最高攻撃力200と幅を持たせてあります

こちらのHPが200より低い場合ランダムな攻撃力でスリリングな戦闘を

楽しめるのではないかななんて思っています

自分のキャラもこっそりいれてしまっています

経験値2000 HP2000 最大攻撃力5000 討伐時ドロップゴールド5000000

という値を設定しました(自分大好きか?)

名前だけ見ると空き缶の秋カンナさんがマスコットガールに抜擢されそうです

ゴホン....妄想はこのへんにしてと...

まあ できるかどうか謎ですけどもう少し作っていきます




またまた構想

またまた構想

主人公と作ったmobをたたかわせるため少しパラメータ

をふやすことにしてみました

class Syokki:

    def __init__(self,name,num,val,hp,maxdam,mindam,gold):
        self.name = name
        self.num = num
        self.val = val
        self.hp = hp
        self.maxdam = maxdam
        self.mindam = mindam   
        self.gold = gold

##################################################################################################
#name=mobname num=mobnumber val=討伐経験値 hp=moblifepoint maxdam=mobmaxdamage mindam=mobmindamage #
 #gold=会得ゴールド        name num val hp max min gold                                                                          #
##################################################################################################

普段遊んでいるRPGの敵のパラメータを見るともっといろいろな値があるようですが


とりあえず敵のHPから此方が与えたLVに応じたランダムなダメージを引いて0にする

もしくは敵のランダムな(min~max)攻撃力で此方がやられる

ようにしてみてはどうだろうかと考えています

ゲームの流れも考えてみています

1 フィールド選択(戦闘レベル選択)→mobnumでグループ分け
2 サイコロですすむ
3 テキスト(暑い,寒い,オアシスを見つけた,転んだ,歌をうたってみた,...etc)
 or 敵と遭遇(画像,音が出たら面白いだろうなぁ)
4 戦闘 勝利 or 敗北 経験値,gold会得LVUP
5 主人公ステータス表示
6 フィールド選択 or サイコロ

こんな感じのものが出来たらいいのになぁ

まぁいきあたりばったりですので技術的に難しいようならやめちゃいます

とりあえずmobのパラメータを考えてみよ〜っと





 久しぶりの更新です 備忘録 使っているarchlinuxにnvidiaのドライバを入れたところドライバがあっていなかったのかxが起動せずこれをアンインストールしたがその後xf86-video-nouveauが入っているにもかかわらずxが起動しなくなったのでarchwikiにて調...