1
Fork 0
mirror of https://github.com/RYGhub/royalnet.git synced 2024-11-27 13:34:28 +00:00
royalnet/adventuremode.py

184 lines
8.8 KiB
Python
Raw Normal View History

2015-09-18 21:17:25 +00:00
# -*- coding: utf-8 -*-
import requests
import json
2015-09-20 18:09:04 +00:00
import sys
2015-09-18 21:17:25 +00:00
#Inizializza la API Key di Telegram
token = ""
#Ultimo messaggio mandato dal bot.
lastmsg = ""
#Nascondi la tastiera.
no_keyboard = {
'hide_keyboard': True,
}
json.dumps(no_keyboard)
#Gruppo di destinazione
2015-09-19 22:40:56 +00:00
target_group = -13164589
2015-09-18 21:17:25 +00:00
#Manda un messaggio.
def sendMessage(content, tastiera=no_keyboard, to=target_group):
#Parametri del messaggio
parametri = {
2015-09-19 23:18:52 +00:00
'chat_id': to, #L'ID della chat a cui mandare il messaggio, Royal Games: -2141322 Royal Bot Testing Group: -13164589
2015-09-18 21:17:25 +00:00
'text': content, #Il messaggio da mandare
'reply_markup': tastiera
}
#Manda il messaggio
r = requests.get("https://api.telegram.org/bot" + token + "/sendMessage", params=parametri)
#Leggi un file e rispondi con il contenuto!
def readFile(name):
file = open(name, 'r')
content = file.read()
file.close()
return content
#Scrivi qualcosa su un file
def writeFile(name, content):
file = open(name, 'w')
file.write(content)
file.close()
#Caricamento delle API Keys...
token = readFile('telegramapi.txt')
def getUpdates():
#Parametri della richiesta da fare
parametri = {
'offset': readFile("lastid.txt"), #Update ID del messaggio da leggere
'limit': 1, #Numero di messaggi da ricevere alla volta, lasciare 1
'timeout': 300, #Secondi da mantenere attiva la richiesta se non c'e' nessun messaggio
}
#Manda la richiesta ai server di Telegram e convertila in un dizionario
data = requests.get("https://api.telegram.org/bot" + token + "/getUpdates", params=parametri).json()
if(data['ok']):
if(data['result'] != []):
#Aggiorna l'update ID sul file
writeFile("lastid.txt", str(data['result'][0]['update_id'] + 1))
#...esiste il messaggio? telegram wtf
2015-09-20 18:19:39 +00:00
if(data['result'][0]['message'] != None):
if(data['result'][0]['message']['text'] != None):
2015-09-20 18:09:04 +00:00
return data['result'][0]['message']
else:
raise KeyError("Qualcosa nel messaggio di Telegram è andato storto. Molto storto.")
2015-09-19 22:46:36 +00:00
else:
raise KeyError("Qualcosa nel messaggio di Telegram è andato storto. Molto storto.")
2015-09-18 21:17:25 +00:00
#############################################
## Qui inizia la roba che serve a te, max! ##
#############################################
2015-09-19 23:07:02 +00:00
#Vita iniziale!
hp = 100
2015-09-21 20:55:11 +00:00
#La candela!
candela = False
2015-09-18 21:17:25 +00:00
#Scrivi la storia!
def racconto(testo):
print(testo)
sendMessage(testo)
#Apri una tastiera con due scelte
def treScelte(puno, pdue, ptre):
tastiera = {
2015-09-20 18:19:39 +00:00
'keyboard': [[puno, pdue, ptre]],
2015-09-18 21:17:25 +00:00
'one_time_keyboard': True,
}
2015-09-20 18:28:39 +00:00
print("Cosa volete fare?\n1: " + puno + "\n2: " + pdue + "\n3: " + ptre)
sendMessage(chr(10067) + "Cosa volete fare?\n1: " + puno + "\n2: " + pdue + "\n3: " + ptre, json.dumps(tastiera))
2015-09-18 21:17:25 +00:00
#Aspetta una risposta...
waiting = True
while(waiting):
msg = getUpdates()
if(msg['text'] == puno):
return 1
elif(msg['text'] == pdue):
return 2
elif(msg['text'] == ptre):
return 3
2015-09-19 23:07:02 +00:00
#Modifica la vita. Mettere valori negativi per ridurla, positivi per aumentarla.
def vita(var):
2015-09-20 18:09:04 +00:00
global hp
2015-09-19 23:07:02 +00:00
hp = hp + var
2015-09-20 18:19:39 +00:00
sendMessage(chr(10084) + ' ' + str(var) + "\n" + "Ora avete " + str(hp) + " punti vita.")
2015-09-20 18:09:04 +00:00
if(hp <= 0):
2015-09-20 18:28:39 +00:00
print("Game over...")
2015-09-20 18:09:04 +00:00
sendMessage("Hai finito la vita! Game over!")
sys.exit()
2015-09-19 23:07:02 +00:00
2015-09-19 13:34:19 +00:00
#############################
## Qui inizia la storia... ##
#############################
#Copyright @MaxSensei 2015
2015-09-19 23:07:02 +00:00
sendMessage("Benvenuto a Royal Bot Adventures!\nVERSIONE ALPHA QUINDI PIENA DI BUG\nStoria scritta da @MaxSensei")
2015-09-19 13:34:19 +00:00
racconto("Vi svegliate in un luogo del tutto buio, sentite un flebile respiro da qualche parte nel buio. Tastate la vostra fedelissima spada. Cercate di ricordare qualcosa ma con scarso successo (originale eh?). ")
while(True):
s = treScelte("Brandite la spada verso i respiri nel buio", "Chiedete chi è ad alta voce", "State zitti e immobili")
if(s == 1):
racconto("Ahia! Tu e la tua compagnia vi colpite a vicenda con le spade.")
2015-09-20 18:09:04 +00:00
vita(-15)
2015-09-19 13:34:19 +00:00
elif(s == 2):
racconto("Riconoscete i vostri amici e vi ritenete fortunati di non aver ferito nessuno.")
break
elif(s == 3):
racconto("Che codardi, tanto non succede nulla...")
break
racconto("Siete in un luogo del tutto buio, ma vedete della luce molto lontano.")
while(True):
2015-09-20 18:09:23 +00:00
s = treScelte("Esaminate il luogo circostante", "Muovetevi nella direzione della luce", "Controllate i vostri vestiti")
2015-09-19 13:34:19 +00:00
if(s == 1):
2015-09-21 20:55:11 +00:00
racconto("Sembrate constatare che il pavimento sia fatto di dura roccia e le parenti intorno non si sentono, tastate per terra quello che sembra una candela spenta (utile eh?).")
candela = True
2015-09-19 13:34:19 +00:00
elif(s == 2):
2015-09-21 20:55:11 +00:00
if(candela == False):
racconto("Brancolate nel buio nella direzione della luce, inciampate in qualcosa e vi spaccate il naso per terra.")
vita(-10)
racconto("Scavando nella dura roccia. Scoprite di essere incastrati in un qualcosa simile a una radice, ma grossa e semovente.")
c = treScelte("Proseguite verso la luce con cautela", "Correte verso la luce", "Tornate indietro")
elif(candela == True):
racconto("Vi dirigete verso la luce, ma scoprite che un enorme pianta vi intralcia la strada. Si sentono soffocati fruscii nel terreno in cui penetra la radice.")
racconto("La candela per fortuna si é rivelata essere elettrica per mancanza di fantasia dell'autore, e premendo un pulsantino sul lato illumina l'area circostante. La luce non é abbastanza da illuminare del tutto la caverna, ma potete almeno vedere ciò su cui camminate.")
c = treScelte("Proseguite verso la luce con cautela", "Correte verso la luce", "Esaminate la pianta")
if(c == 1):
racconto("Osservate da vicino quello che pare essere un'enorme radice che inizia dai meandri oscuri del soffitto e scende giù, perforando con facilità il duro granito. Il tentacolo affonda sempre più giù e potete sentire come rompe e sgretola la terra sottostante...")
vita(-2)
elif(c == 2):
racconto("Avanzate correndo verso la luce, e inciampate in altri tentacoli, subendo solo un po' di danni. Quello che all'inizio sembrava essere un alone di luce si rivelò essere un piccolo varco nella parete. I vostri occhi, ormai abituati al buio, non distinguono chiaramente quello che c'è oltre.")
vita(-10)
elif(c == 3) and (candela == True):
racconto("Vedete crepe ovunque, e la pianta che penetra nel terreno creandone altre...")
if(c == 1) or (c == 2) or ((c == 3) and (candela == True)):
racconto("La terra inizia a tremare e grosse crepe iniziano a comprarire nel terreno, le grosse radici vengono rapidamente rissuchiate nel soffito immenso, e un orribile ruggito vi spacca le orecchie. Siete assordati, e non potete sentire nulla.")
racconto("Avete il presentimento che qualcosa di terribile stia per accadere.")
b = treScelte("Scappate via dalla zona crepata", "Rimanete come idioti a guardare l'avvenimento", "Vi buttate al centro del buco")
if(b == 1):
racconto("Vi buttate fuori dal buco appena in tempo, e sentite una forta esplosione alle vostre spalle... Con una forza possente venite spinti giù dalla montagna. Cadete facendo un'incredibile fracasso e sentite un male allucinante. Siete sull'orlo di svenire. Con le ultime forze vi girate ad osservare la scena. Un enorme creatura grande come il picco della montagna si stava levando in cielo, una mastodontica isola composta da tentacoli e occhi gialli. Un enorme tentacolo continua ad essere attaccato nel centro di quello che una volta era un gigantesco picco, finchè non crollò su se stesso ed implose. La grossa nube volò lentamente emettendo il suo ruggito di trionfo sopra di voi, e in quel preciso istante le palpebre divennero troppo pesanti e cedettero.")
sendMessage("Conclusione #1! Rigiocate per scoprire le altre.")
break
elif(b == 2):
racconto("Ottima scelta! Il soffito all'improvviso si stacca con un forte boato, inondando la caverna di luce. Grossi tentacoli si ritraggono da sotto il suolo, e la terra inizia a sgretolarsi sotto i vostri piedi. Fate in tempo a vedere un enorme tentacolo al centro del pavimento. Improvvisamente, il tentacolo iniziò a gonfiarsi e tutto il mondo intorno implose. Svenite.")
sendMessage("Conclusione #2! Rigiocate per scoprire le altre.")
break
elif(b == 3):
racconto("Siete proprio pirla... La montagna si avvolge su sè stessa e, avvolti da lava e roccia, spiaccicati con una forza enorme, perite.")
vita(-100)
2015-09-19 13:34:19 +00:00
elif(s == 3):
racconto("Vi ritrovate in dei vestiti pesanti e grossi, pieni di tasche.")
2015-09-21 20:55:11 +00:00
racconto("Ad una accurata ispezione trovate un barattolo contenente qualcosa che sembra liquido.")
while(True):
s = treScelte("Bevete il liquido", "Vi spalmate addosso il liquido", "Introducete nella cavità anale")
if(s == 1):
racconto("Ha un sapore orribile!\nVi sentite male...")
vita(-10)
elif(s == 2):
racconto("Congratulazioni, ora siete coperti di feci di origini sconosciute!")
vita(-2)
elif(s == 3):
racconto("Sentite all'improvviso una forza sconosciuta pervadervi tutto il corpo;\n vi concentrate, e riuscite a far splendere le vostre splendide chiappe più del sole in estate.")
break
racconto("THE END!")