2016-05-15 35 views
1

私は、人々のコンピュータをハッキングし、ファイルや金銭を盗んでミッションを完了させるという小さなゲームを作っています。Pythonプログラムは実行されません

#SICCr4k2: Broke 
# 
# 
# 
#Remember whenever you are printing a random ip address to add the "." in between each part of the ip (each random number) 

## LAST LEFT ON HERE: MAKE BUTTONS FOR NODES 
## MAKE FILES FOR NULL'S NODE 
## SET THE CORRECT PLACEMENTS FOR ALL THE BUTTONS 
## nullMain referenced before assignment 
## make it so that you send a message through the prompt to get their ip, then it automatically puts the ip in the nodes 
## window. Like you send the person a message, and then it gets the ip and puts it in the nodes window 
## take away the buttons in the nodes window, just at labels where it points to the host's ip address. 

import random 
import time 
import sys 
import os 
import tkinter as tk 
from tkinter import * 

#def nodes(): 
# nodeWindow = tk.Tk() 
# frame = tk.Frame(nodeWindow, width=700, height=400) 
# frame.grid_propagate(0) 
# frame.grid() 
# nodeWindow.title("||| Nodes |||") 
# nullIp = tk.Label(nodeWindow, text="Ip: 221.153.52.216") 
# nullIp.grid(row=0, column=0) 
# nullMain = tk.Button(nodeWindow, text="Null", function=nullMainCallback()) 
# nullMain.config(height=1, width=100) 
# nullMain.grid(row=0, column=0) 
# def nullMainCallback(): 
#  nullMain.destroy() 
#  nullIp = tk.Label(nodeWindow, text="Ip: 221.153.52.216") 
#  nullIp.grid(row=0, column=0) 
#def commands(): 
def numbers(): 
    number1 = random.randint(1, 99) 
    number2 = random.randint(1, 99) 
    print(number1) 
    if number1 != number2: 
     numbers() 
    if number1 == number2: 
     os.system('cls') 

def ips(): 
    nullIp = ('18.279.332') 

def getIp(): 
    x = random.randint(1, 222) 
    if x == 127: 
     x += 1 
    return '{}.{}.{}.{}'.format(
     x, 
    random.randint(0, 255), 
    random.randint(0, 255), 
    random.randint(0, 255)) 

def commandInput(): 
    CommandInput = input(">>> ") 
    if CommandInput == ("myNodes()"): 
     nodes() 
    else: 
     commandInput() 
    commandInput() 

def usernameCreation(): 
    username = input(">>> ") 
    print("'" + username + "' is that correct?") 
    usernameInput = input(">>> ") 
    if usernameInput == ("yes"): 
     print("Okay...") 
    if usernameInput ==("no"): 
     usernameCreation() 

def game(): 
    def tutorial(): 
     print('Hello.') 
     time.sleep(3) 
     print('Welcome back.') 
     time.sleep(3) 
     print('How was it?') 
     time.sleep(3) 
     print('Being hacked for the first time?') 
     time.sleep(3) 
     print("You're probably wondering who I am.") 
     time.sleep(5) 
     print("Well, my name is Null.") 
     time.sleep(3) 
     print("Only because I am well known for nothing.") 
     time.sleep(3) 
     print("Other than not being alive.") 
     time.sleep(3) 
     os.system('cls') 
     print("First thing's first, what shall I call you?") 
     usernameCreation() 
     print("Let's give you a bit of movement.") 
     time.sleep(3) 
     print("""The first thing you will want to do would be to connect to my computer, but 
to do that, you have to find my ip address. Here. I just uploaded new software to your computer.""") 
     time.sleep(3) 
     print("""You will now be able to access my ip, nad many other's with a simple command. The command is 
getIp(). Input that command below, but inside the parenthesis, you type in the screen name. For instance: getIp(Null). 
type that command in to get my ip.""") 
     input(">>> ") 
     if ("getIp(Null)"): 
      numbers() 
      print("""My ip was just added to your nodes, which you can access by typing myNodes().""") 
game() 
私はちょうど私がプログラムを実行すると、それはすべてのエラーか何かが表示されないことに注意したい

、それだけでは、すべての実行されません...任意のアイデア:ここでは今のようにコードがあります????

+0

ヒント:あなたの質問のタイトルをよりわかりやすくし、[mcve] –

答えて

3

tutorialgameの中に定義します(あなたは本当に行うべきではありません - 定義する意味はありません)。tutorialを決して呼び出さないでください。 game

インサイドあなたはtutorialを呼びたい:

def game(): 
    def tutorial(): 
     # code for tutorial 
    tutorial() 

良い方法はあなたのコードを構築するために、しかし、program`の実行を開始するための標準的な方法である(mainメソッドを使用することですそして、別の他のすべての機能を維持し、あなたがやったようにネスト機能する必要はありませんので、

を、例えば:。。

def main(): 
    tutorial() 

# all other function definitions 

def tutorial(): 
    # code for tutorial 

if __name__ == "__main__": 
    main() 
1

tutorial()を呼び出すことはありませんが、このような関数をネストしてはいけません。

関連する問題