Newer
Older
Ruby / game.rb
#!/usr/bin/env ruby
# -*- coding: utf-8 -*-

pHP=30.to_i
ftpHP=pHP-10
stpHP=ftpHP-10
fepHP=ftpHP-20
fkpHP=stpHP-10


sHP=20.to_i
fzsHP=sHP-10
ffsHP=sHP-20
szsHP=fzsHP-10
fzffsHP=fzsHP-10


print("プレイヤー名を入力してください。\n")
pn=gets.chomp
printf("%sでよろしいですか?Yes・Noのどちらかを入力してください。\n",pn)
while true
  pna=gets.chomp
  if pna=="Yes"
    puts("では始めさせていただきます。ゲームスタート!")
    break
  elsif pna=="No"
    puts("では名前を入力し直してください。")
    redo
  else
    puts("Yes・Noのどちらかを入力して下さい。")
    redo
  end
end

while true
  teki=[]
  teki<<"スライム"
  x=rand(1)
  if x==0
    print("おっと!スライムが現れたぞ?!早速退治しよう!\n")
    skougeki=[]
    skougeki<<"体当たり"
    x=rand(1)
    if x==0
      printf("スライムが体当たりを仕掛けてきたぞ!10ダメージ受けた!%sのHPは残り%dだ!\n",pn,ftpHP)
    end
    printf("次は%sの攻撃だ!右の一覧から行動を選択しろ!斬撃・ファイヤボール・降伏する\n",pn)
    pkougeki=gets.chomp
    if pkougeki=="斬撃"
      printf("%sの斬撃攻撃だ!10ダメージを受けた!スライムHPは残り%dだ!\n",pn,fzsHP)
      skougeki=[]
      skougeki<<"体当たり"
      skougeki<<"塩酸飛ばし"
      skougeki<<"覚醒"
      skougeki<<"体当たり"
      x=rand(4)
      if x==0
        printf("スライムが体当たりを仕掛けてきたぞ!10ダメージ受けた!%sのHPは残り%dだ!\n",pn,stpHP)
        printf("次は%sの攻撃だ!右の一覧から行動を選択しろ!斬撃・ファイヤボール・降伏する\n",pn)
        pkougeki=gets.chomp
        if pkougeki=="斬撃"
          printf("%sの斬撃攻撃だ!10ダメージを与えた!スライムHPは残り%dだ!\n",pn,szsHP)
          printf("スライムのHPが0になった!%sの勝利だ!\n",pn)
          break
        elsif pkougeki=="ファイヤボール"
          printf("%sのファイヤボール攻撃だ!20ダメージ与えた!スライムHPは残り%dだ!\n",pn,ffsHP)
          printf("スライムの残りHPが0になった!%sの勝利だ!\n",pn)
          break
        elsif pkougeki=="降伏する"
          printf("%sはスライムに降伏した。スライムの勝利だ!\n",pn)
          break
        else
          print("斬撃・ファイヤボール・降伏する・のどれかを入力してください。\n")
        end
      elsif x==1
        printf("スライムが塩酸飛ばしを仕掛けてきたぞ!20ダメージ受けた!%sのHPは残り%dだ!\n",pn,fepHP)
        printf("%sのHPが0になった!スライムの勝利だ!\n",pn)
        redo
      elsif x==2
        printf("スライムが覚醒した!体当たりを仕掛けてきたぞ!覚醒の影響で体当たりのダメージ量が二倍になった。20ダメージ受けた!%sのHPは残り%dだ!\n",pn,fkpHP)
        printf("%sのHPが0になった!スライムの勝利だ!\n",pn)
      elsif x==3
        printf("スライムが体当たりを仕掛けてきたぞ!10ダメージ与えた!%sは残り%dだ!\n",pn,stpHP)
        printf("%sの攻撃だ!右の一覧から行動を選択しろ!斬撃・ファイヤボール・降伏する\n",pn)
        pkougeki=gets.chomp
        if pkougeki=="斬撃"
          printf("%sの斬撃攻撃だ!10ダメージを与えた!スライムHPは残り%dだ!\n",pn,szsHP)
          print("スライムのHPが0になった!プレイヤーの勝利だ!\n")
          break
        elsif pkougeki=="ファイヤボール"
          printf("%sのファイヤボール攻撃だ!10ダメージを与えた!スライムHPは残り%dだ!\n",pn,fzffsHP)
        elsif pkougeki=="降伏する"
          printf("%sはスライムに降伏した。スライムの勝利だ!\n",pn)
          redo
        else
          print("斬撃・ファイヤボール・降伏する・のどれかを入力してください。\n")
        end
      elsif pkougeki=="ファイヤボール"
        printf("%sのファイヤボール攻撃だ!20ダメージを与えた!スライムHPは残り%dだ!\n",pn,ffsHP)
        printf("スライムのHPが0になった!%sの勝利だ!\n",pn)
        break
      elsif pkougeki=="降伏する"
        printf("%sはスライムに降伏した。スライムの勝利だ!\n",pn)
        redo
      end
    elsif pkougeki=="ファイヤボール"
      printf("プレイヤーのファイヤボール攻撃だ!20ダメージ与えた!スライムHPは残り%dだ!\n",ffsHP)
      printf("スライムのHPが0になった!%sの勝利だ!\n",pn)
      break
    elsif pkougeki=="降伏する"
      printf("%sはスライムに降伏した。スライムの勝利だ!\n",pn)
      redo
    else
      print("斬撃・ファイヤボール・降伏する・のどれかを入力してください。\n")
    end
  end
end
print("おめでとう!君はチュートリアルを終えたよ!ここから難しくなっていくけど、頑張ってね!\n")
print("じゃあ今から倒す敵を選んでね!\n")
print("            ゴブリン→難易度★★★\n")
print("              オーク→難易度★★★★\n")
print("      タイガーウルフ→難易度★★★★★\n")
print("エンシェントドラゴン→難易度★★★★★★★★\n")
teki=gets.chomp
printf("%sにチャレンジしますか?\Yes・Noで選んでください。\n")
ta=gets.chomp
while true
  if ta=="Yes"
    printf("では%sとの対決を開始させていただきます。\n")
    pHP=100.to_i


    fzpHP=pHP-20
    fopHP=pHP-10
    fmpHP=pHP-20


    gHP=110.to_i


    fagHP=gHP-30
    ffgHP=gHP-40
    fegHP=gHP-40


    if teki=="ゴブリン"
      print("試合、始め!\n")
      gkougeki=[]
      gkougeki<<"頭突き"
      gkougeki<<"殴打"
      gkougeki<<"回し蹴り"
      x=rand(3)
      if x=0
        printf("ゴブリンの頭突き!20ダメージ受けた!%sの残りHPは%dだ!\n",pn,fzpHP)
        print("次はプレイヤーの攻撃だ!右の[]の中から行動を選べ![アイスアロー・ファイヤ・エレクトリックパンチ]\n")
        print("※アイスアロー…魔法で作った氷の矢 ファイヤ…対象の地面を燃やす エレクトリックパンチ…手に電気を纏ってパンチする\n")
        pkougeki=gets.chomp
        if gpkougeki=="アイスアロー"
          printf("%sのアイスアロー!30ダメージ与えた!ゴブリンの残りHPは%dだ!\n",pn,fagHP)
          break
        elsif pkougeki=="ファイヤ"
          printf("%sのファイヤ!40ダメージ与えた!ゴブリンの残りHPは%dだ!\n",pn,ffgHP)
          break
        elsif pkougeki=="エレクトリックパンチ"
          printf("%sのエレクトリックパンチ!40ダメージ与えた!ゴブリンの残りHPは%dだ!\n",pn,gHP)
          break
        else
          print("アイスアロー・ファイア・エレクトリックパンチのどれかの行動を入力してください。\n")
          break
        end
      elsif x=1
        printf("ゴブリンの殴打!10ダメージ受けた!%sの残りHPは%dだ!\n",pn,fopHP)
        break
      elsif x=2
        printf("ゴブリンの回し蹴り!20ダメージ受けた%sの残りHPは%dだ!\n",pn,fmpHP)
        break
      end
      
    elsif ta=="No"
      printf("ではチャレンジする相手を選び直してください。\n")
      redo
    end