1
Fork 0
mirror of https://github.com/RYGhub/royalnet.git synced 2024-11-23 19:44:20 +00:00
royalnet/adventuremode.py

213 lines
11 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-23 19:34:43 +00:00
import random
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="", to=target_group):
2015-09-18 21:17:25 +00:00
#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
2015-09-24 19:22:09 +00:00
while(True):
data = requests.get("https://api.telegram.org/bot" + token + "/getUpdates", params=parametri).json()
if(data['ok'] == True):
if(data['result'] != []):
#Aggiorna l'update ID sul file
writeFile("lastid.txt", str(data['result'][0]['update_id'] + 1))
#...esiste il messaggio? telegram wtf
if(data['result'][0]['message'] != None):
if(data['result'][0]['message']['text'] != ""):
print(str(data['result'][0]['update_id']) + ": " + data['result'][0]['message']['text'])
2015-09-24 19:22:09 +00:00
return data['result'][0]['message']
else:
raise KeyError("Qualcosa nel messaggio di Telegram è andato storto. Molto storto.")
2015-09-20 18:09:04 +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):
2015-09-24 20:21:06 +00:00
sendMessage(chr(128493) + " " + testo, no_keyboard)
2015-09-18 21:17:25 +00:00
#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-24 20:21:06 +00:00
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...
while(True):
2015-09-18 21:17:25 +00:00
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):
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)
2015-09-24 20:21:06 +00:00
racconto("Notate che nel pavimento c'è qualcosa di simile a una radice, ma grossa e sembra quasi che si stia muovendo.")
2015-09-21 20:55:11 +00:00
c = treScelte("Proseguite verso la luce con cautela", "Correte verso la luce", "Tornate indietro")
elif(candela == True):
2015-09-24 20:21:06 +00:00
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. \nLa luce non é abbastanza da illuminare del tutto la caverna, ma potete almeno vedere ciò su cui camminate.")
racconto("Vi dirigete verso la luce, ma scoprite che un enorme pianta vi intralcia la strada. \nSi sentono soffocati fruscii nel terreno in cui penetrano le radici.")
c = treScelte("Proseguite verso la luce sicuri di non inciampare", "Correte verso la luce", "Esaminate la pianta")
2015-09-23 19:39:05 +00:00
if(c == 1) and (candela == True):
2015-09-24 20:21:06 +00:00
racconto("Vi addentrate nella caverna, dove una sala si estende nelle profondità della terra. \nAd un certo punto del cammino siete costretti a interrompere il viaggio a causa di un bivio. La luce che stavate seguendo prima risplende sulla sinistra, ma allo stesso momento qualcosa emana una luce rossa di suo sulla destra...")
intelligenza = 10;
2015-09-23 19:34:43 +00:00
while(True):
v = treScelte("Controllate a sinistra", "Procedete spavaldi verso destra", "Inventate il primo *facewall*")
if(v == 1):
racconto("Svoltate a sinistra verso lo scintillio. Trovate un ascia, circondata da rune naniche, per terra. Mentre la pulite dall'enorme quantità di ragnatele, vi accorgete di essere a vostra volta avvolti da fili duri e sottili. Un ragno mostruoso vi spunta davanti.")
r = treScelte("Affrontate il ragno usando l'ascia", "Scappate urlando come ragazzine", "Vi pisciate addosso molto forte")
if(r == 1):
racconto("Il piccolo ragnetto impaurito esplode sotto l'enorme peso della vostra ascia. Quest'ultima però si rompe in mille schegge a causa dell'urto.")
racconto("Congratulazioni, vi siete salvati!")
sendMessage("Conclusione #3! Rigiocate per scoprire le altre.")
break
elif(r == 2):
racconto("Cercate di scappare, ma inciampate nelle ragnatele. Cadete di faccia sul povero ragnetto, spiaccicandolo. Svenite. (Molto anticlimatico, lo so, ma siete voi che fate scelte da imbranati)")
2015-09-24 20:21:06 +00:00
sendMessage("Continua in un prossimo episodio... Ma ci sono altri finali possibili! Rigiocate per scoprire gli altri.")
2015-09-23 19:34:43 +00:00
break
elif(r == 3):
racconto("La piscia cola dai vostri pantaloni, inondando la caverna e lasciandovi senza ossigeno. Il ragnetto vi osserva stupito e si nasconde nelle ragnatele.")
vita(-100)
elif(v == 2):
#Non succede nulla. Per ora.
elif(v == 3):
2015-09-24 20:21:06 +00:00
x = str(random.randint(1, 10)
intelligenza = intelligenza + x
racconto("Ahi, che male! La vostra intelligenza aumenta di " + x) + " punti. \nLa vostra intelligenza attuale è " + intelligenza + ".")
2015-09-23 19:34:43 +00:00
vita(-10)
2015-09-24 20:21:06 +00:00
#Coso buttato lì perchè non mi viene in mente un modo migliore per fare the end. Eh, vabbè.
2015-09-23 19:34:43 +00:00
break
2015-09-23 19:39:05 +00:00
elif(c == 1):
2015-09-24 20:21:06 +00:00
racconto("Osservate da vicino quella che pare essere un'enorme radice che inizia dai meandri oscuri del soffitto e scende giù, perforando con facilità il duro granito. La radice affonda sempre più giù e potete sentire come rompe e sgretola la terra sottostante...")
2015-09-23 19:39:05 +00:00
vita(-2)
2015-09-21 20:55:11 +00:00
elif(c == 2):
2015-09-24 20:21:06 +00:00
racconto("Avanzate correndo verso la luce, e inciampate in altre radici, 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.")
2015-09-21 20:55:11 +00:00
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)):
2015-09-24 20:21:06 +00:00
racconto("La terra inizia a tremare e grosse crepe iniziano a comprarire nel terreno. \nGrosse radici, ora illuminate dalla luce del sole, vengono rapidamente rissuchiate nel soffito immenso. \nUn orribile ruggito vi spacca le orecchie. Siete assordati, e non potete sentire nulla.")
2015-09-21 20:55:11 +00:00
racconto("Avete il presentimento che qualcosa di terribile stia per accadere.")
2015-09-24 20:21:06 +00:00
b = treScelte("Scappate via dalla zona crepata", "Rimanete come idioti a guardare l'avvenimento", "Vi buttate in direzione della luce che si vede in lontananza")
2015-09-21 20:55:11 +00:00
if(b == 1):
2015-09-24 20:21:06 +00:00
racconto("Vi buttate fuori dal buco appena in tempo, e sentite una forte 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 continuava 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 volava lentamente, emettendo il suo ruggito di trionfo sopra di voi, e in quel preciso istante le palpebre divennero troppo pesanti e cedettero.")
2015-09-21 20:55:11 +00:00
sendMessage("Conclusione #1! Rigiocate per scoprire le altre.")
break
elif(b == 2):
2015-09-24 20:21:06 +00:00
racconto("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 inizia a gonfiarsi e tutto il mondo intorno implode. Svenite.")
2015-09-21 20:55:11 +00:00
sendMessage("Conclusione #2! Rigiocate per scoprire le altre.")
break
elif(b == 3):
2015-09-24 20:21:06 +00:00
racconto("Siete proprio pirla... Intravedete qualcosa a forma di ascia, ma non fate in tempo a raggiungerla che la montagna si avvolge su sè stessa e, avvolti da lava e roccia, spiaccicati con una forza enorme, perite.")
2015-09-21 20:55:11 +00:00
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-24 20:23:29 +00:00
racconto("Ad una accurata ispezione trovate una bottiglia contenente qualcosa che sembra liquido. Sull'etichetta vi è raffigurata una lucciola.")
2015-09-21 20:55:11 +00:00
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):
2015-09-24 20:21:06 +00:00
racconto("Congratulazioni, ora siete coperti di merda di origini sconosciute!")
2015-09-21 20:55:11 +00:00
vita(-2)
elif(s == 3):
2015-09-24 20:21:06 +00:00
racconto("Sentite all'improvviso una forza sconosciuta pervadervi tutto il corpo; vi concentrate, e riuscite a far splendere le vostre splendide chiappe più del sole in estate.")
2015-09-21 20:55:11 +00:00
break
2015-09-24 20:21:06 +00:00
#Coso buttato lì perchè non mi viene in mente un modo migliore per fare the end. Eh, vabbè.
2015-09-23 19:39:05 +00:00
break
2015-09-21 20:55:11 +00:00
racconto("THE END!")