2017-12-31 45 views
0

그래서 내 문제는 파이썬에서 게임을 코딩하고 있는데 전투 시스템을 구현하려고하는데, 그렇게하기 위해서 내가 정의한 사용자 정의 함수에서 변수를 출력해야한다. 만들어진. 비록 내가 코드를 실행하려고 할 때마다, 변수 (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

. 그렇게하려고 :

return acten 

main에 :

val = en_spawn() 
print val