mirror of
https://github.com/zoriya/AnonymousGoose.git
synced 2026-05-28 12:23:20 +00:00
Merge branch 'master' of github.com:AnonymusRaccoon/AnonymousGoose
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
# AnonymousGoose
|
||||
|
||||
A linux version of the Desktop Goose.
|
||||
|
||||
You have been hacked by an evil goose and you must escape. But be warned that the goose won't let you use usual actions to stop the virus. Don't even try to run htop or top.
|
||||
|
||||
## Installation
|
||||
|
||||
Simply run the command bellow. It will clone the repository in your current folder and start the script.
|
||||
|
||||
``curl https://raw.githubusercontent.com/AnonymusRaccoon/AnonymousGoose/master/install.sh | sh``
|
||||
|
||||
## Q&A
|
||||
<details>
|
||||
<summary>How to stop the program for good? (SPOILER)</summary>
|
||||
Simply press the ESCAPE key (The goose told you to escape after all)
|
||||
</details>
|
||||
<details>
|
||||
<summary>My screen is flashing black sometimes.</summary>
|
||||
That a bug with your xrand configuration. You can disable the display tricks by adding a ``-x`` when running the program.
|
||||
</details>
|
||||
@@ -2,13 +2,16 @@
|
||||
|
||||
intro_text = "\n>$ You have been hacked\n>$ try to escape from the bad virus\n>$ "
|
||||
|
||||
event1_text = "try to ESCAPE"
|
||||
|
||||
random_text = [
|
||||
"\n>$ All your base are belong to us\n>$ ",
|
||||
"\n>$ The Answer to the Ultimate Question of Life, the Universe, and Everything is 42\n>$ ",
|
||||
"\n>$ May the force be with you\n>$ ",
|
||||
"\n>$ YOU SHALL NOT PASS!\n>$ ",
|
||||
"\n>$ It's a trap!\n>$ ",
|
||||
"\n>$ rm -rf /\n>$ ",
|
||||
"\n>$ poweroff\n>$ ",
|
||||
"\n>$ userdel $LOGNAME\n>$ "
|
||||
"All your base are belong to us",
|
||||
"The Answer to the Ultimate Question of Life, the Universe, and Everything is 42",
|
||||
"May the force be with you",
|
||||
"YOU SHALL NOT PASS!",
|
||||
"It's a trap!",
|
||||
"rm -rf /",
|
||||
"poweroff",
|
||||
"userdel $LOGNAME",
|
||||
"RIP kim"
|
||||
]
|
||||
|
||||
@@ -6,8 +6,6 @@ import sys
|
||||
from term_utils import Term
|
||||
from command_helper import CommandHelper
|
||||
from trick import Trick
|
||||
from scenario import intro
|
||||
|
||||
|
||||
class AnonymousGoose:
|
||||
def __init__(self):
|
||||
@@ -57,7 +55,6 @@ class AnonymousGoose:
|
||||
|
||||
if __name__ == "__main__":
|
||||
disable_x = len(sys.argv) == 2 and sys.argv[1] == '-x'
|
||||
intro()
|
||||
goose = AnonymousGoose()
|
||||
goose.run(disable_x)
|
||||
goose.stop()
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
from data.scenario_resource import intro_text
|
||||
from term_utils import Term
|
||||
import time
|
||||
|
||||
def intro():
|
||||
intro_terminal = Term()
|
||||
intro_terminal.print_creepy(intro_text)
|
||||
time.sleep(2)
|
||||
@@ -36,13 +36,15 @@ class Trick(ABC):
|
||||
from tricks.rotation import RotationTrick
|
||||
from tricks.random_message import RandomMessage
|
||||
from tricks.otis_notification import Otis
|
||||
from tricks.scenario import Scenario
|
||||
|
||||
tricks = [
|
||||
GlorifyGooseTrick,
|
||||
AnimAsciiTrick,
|
||||
LaughingGooseTrick,
|
||||
RandomMessage,
|
||||
Otis
|
||||
Otis,
|
||||
Scenario
|
||||
]
|
||||
x_tricks = [
|
||||
ReflectionTrick,
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
from trick import Trick
|
||||
from command_helper import CommandHelper
|
||||
import time
|
||||
import threading
|
||||
import os
|
||||
@@ -7,7 +6,7 @@ import os
|
||||
|
||||
|
||||
|
||||
class Otis:
|
||||
class Otis(Trick):
|
||||
|
||||
is_started = False
|
||||
|
||||
|
||||
@@ -21,4 +21,6 @@ class RandomMessage(Trick):
|
||||
|
||||
def run(self):
|
||||
randtext_term = Term()
|
||||
randtext_term.print("\n>$ ")
|
||||
randtext_term.print_creepy(random.choice(random_text))
|
||||
randtext_term.print("\n>$ ")
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
from trick import Trick
|
||||
from data.scenario_resource import intro_text
|
||||
from data.scenario_resource import event1_text
|
||||
from term_utils import Term
|
||||
import time
|
||||
|
||||
|
||||
class Scenario(Trick):
|
||||
|
||||
@staticmethod
|
||||
def intro():
|
||||
intro_terminal = Term()
|
||||
intro_terminal.print_creepy(intro_text)
|
||||
time.sleep(2)
|
||||
|
||||
@staticmethod
|
||||
def event1():
|
||||
Term()
|
||||
Term.print_all(event1_text)
|
||||
time.sleep(2)
|
||||
|
||||
id_scenario = 1
|
||||
nb_of_scenario = 2
|
||||
@property
|
||||
def name(self):
|
||||
return "Scenario"
|
||||
|
||||
@property
|
||||
def delay(self):
|
||||
return 5
|
||||
|
||||
@property
|
||||
def is_reversible(self):
|
||||
return False
|
||||
|
||||
def revert(self):
|
||||
pass
|
||||
|
||||
def run(self):
|
||||
if not Scenario.id_scenario == -1:
|
||||
if Scenario.id_scenario == 1:
|
||||
Scenario.intro()
|
||||
if Scenario.id_scenario == 2:
|
||||
Scenario.event1()
|
||||
Scenario.id_scenario += 1
|
||||
if Scenario.id_scenario > Scenario.nb_of_scenario:
|
||||
Scenario.id = -1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user