Итак, у меня есть два сценария, которые следуют ниже.DirectEntry и базовый чат Python AI: Panda3D
Сценарий 1:
while True:
userInput = raw_input(">>> ")
if userInput.lower() in ["yo",'hi', 'hello', 'hi there', 'hey there']:
print "Hi, I'm Jane."
elif userInput.lower() in ["sup", "what's up", "how are you", "how are u", "sup?", "what's up?", "how are you?", "how are u?"]:
whassup = ['Not much, you?','The usual!', 'Working on paperwork.', 'Helping out, haha.', 'Annoying my sisters.']
print(random.choice(whassup))
elif userInput.lower() in ["cool", "awesome", "sounds cool", "rad"]:
print "Aww, thanks!"
else:
print "Sorry, I can only use SpeedChat."
Тогда, вот сценарий 2, который представляет собой слегка отредактированный вариант кода примера из here:
#add some text
bk_text = "This is my Demo"
userin = OnscreenText(text = bk_text, pos = (0, 0.7),
scale = 0.07,fg=(0,0,0,1),align=TextNode.ACenter,mayChange=1)
userin.setFont(font)
#callback function to set text
def setText(textEntered):
userin.setText(textEntered)
#clear the text
def clearText():
b.enterText('')
#add button
b = DirectEntry(text = "" ,scale=.05, command=setText,
initialText="Type Something", numLines = 2,focus=1,focusInCommand=clearText)
Так нравится. То, что я пытаюсь, состоит в том, чтобы использовать тип ввода для ввода в поле DirectEntry, чтобы панель Panda3D (есть анимированный символ, но это не имеет значения) выводит ответ программы.
т. Е. Пользователь вводит «Привет!». поэтому программа продолжила бы выплюнуть «Привет, я Джейн». на экране.
Я супер-новый для кодирования и буквально все, что я делаю, очень сложно; объяснив немного, было бы очень полезно! Бесконечно благодарен!