2017-12-31 15 views
0

これは私の問題です。私はPythonでゲームをコーディングしていますが、私は戦闘システムを実装しようとしていますが、そうするために、私はユーザー定義関数から変数を出力する必要があります作成した。しかし、コードを実行しようとするたびに、変数(acten)が定義されていないことがわかります。ただし、UDFをメインに含めています。これをどのように機能させるには?main()のUDFのvarsの使い方は? (Python)

def en_spawn(): 

enstype = random.randint(1,100) 
if enstype >= 99: 
    enstype = "Aelon, the Fallen" 
else: 
    if enstype >= 98: 
     enstype = "Mael, the Trapped" 
    else: 
     if enstype >= 97: 
      enstype = "Ish Ash, the Tormented" 
     else: 
      if enstype >= 96: 
       enstype = "Farr, the Defeated" 
      else: 
       if enstype >= 86: 
        enstype = "Bloodthirsty" 
       else: 
        if enstype >= 45: 
         enstype = "Vengeful" 
        else: 
         if enstype >= 15: 
          enstype = "Tranquil" 
         else: 
          if enstype >= 0: 
           enstype = "Harmless" 


entype = random.randint(1,100) 
if entype >= 97: 
    entype = " Demon" 
else: 
    if entype >= 92: 
     entype = " Damned" 
    else: 
     if entype >= 80: 
      entype = " Familiar" 
     else: 
      if entype >= 50: 
       entype = " Spirit" 
      else: 
       if entype >= 0: 
        entype = " Undead" 

if enstype == "Aelon, the Fallen": 
    entype = " King" 

sec_boss = random.randint(1,1000) 
if enstype == "Aelon, the Fallen": 
    if sec_boss >= 976: 
     enstype = "All" 
     entype = "" 
    else: 
     if sec_boss >= 779: 
      enstype = "Aelon, the Redeemed" 
      entype = "" 

acten= enstype+entype 

デフメイン():

en_spawn() 
print(acten) 

メイン()

+0

acten'を返す 'てみてください。 – uttejh

答えて

0

あなたは値を返す必要があります。 ので、試してみてください。main

return acten 

を:

val = en_spawn() 
print val 
関連する問題