Advertisement
AlexMastang

CS:GO - C4

Apr 16th, 2023 (edited)
582
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.22 KB | None | 0 0
  1. -- "Librerie"
  2. local term = require("term")
  3.  
  4. -- Tempo del timer (secondi)
  5. local clock = 20
  6. -- Debug timer
  7. local debug = false
  8. -- Codice d'innesco
  9. local piss = 7355608
  10. -- Grandezza codice (cifre)
  11. local n = string.len(tostring(piss))
  12.  
  13. local v = {}
  14. local key = 0
  15. local ciclo = false
  16.  
  17. -- Frasi della morte
  18. local frasi = {
  19.     "BOOOM!",
  20.     "C4 go brrrrrr",
  21.     "Detonato",
  22.     "morte.",
  23.     "Skibidi bop mm dada"
  24. }
  25.  
  26. local c_frasi = #frasi
  27.  
  28.  
  29. -- Carica il vettore in sequenza + stampa
  30. --[[
  31.     input -> 1 2 3
  32.     vettore:
  33.     0 0 0 0 0 0 0 <- NaN
  34.     0 0 0 0 0 0 1 <- 1
  35.     0 0 0 0 0 1 2 <- 2
  36.     0 0 0 0 1 2 3 <- 3
  37. ]]
  38. local function caricavet(a, l)
  39.     local x, y = term.getCursor()
  40.     local i = 1
  41.     local j = 1
  42.     local val = 0
  43.  
  44.     -- Stampa il vettore
  45.     term.setCursor(1, y+1)
  46.     term.write("> ")
  47.     -- Stampa "*" per tutti gli zeri e si ferma alla prima occorrenza
  48.     while a[j]==0 and j<l+1 do
  49.         term.write("*")
  50.         j = j + 1
  51.     end
  52.     -- Stampa il resto
  53.     while j<l+1 do
  54.         term.write(a[j])
  55.         j = j + 1
  56.     end
  57.     term.write(" <")
  58.     print()
  59.  
  60.     while i<l+1 do
  61.         -- Sposta i valori di un posto verso sinistra
  62.         for t=1,l do
  63.             a[t] = a[t+1]
  64.         end
  65.        
  66.         -- Chiede ed inserisce un valore all'ultima posizione
  67.         val = tonumber(io.read())
  68.         a[l] = val
  69.        
  70.         -- Stampa il vettore
  71.         term.setCursor(1, y+1)
  72.         term.write("> ")
  73.         -- Stampa "*" per tutti gli zeri e si ferma alla prima occorrenza
  74.         j = 1
  75.         while a[j]==0 and j<l+1 do
  76.             term.write("*")
  77.             j = j + 1
  78.         end
  79.         -- Stampa il resto
  80.         while j<l+1 do
  81.             term.write(a[j])
  82.             j = j + 1
  83.         end
  84.         term.write(" <")
  85.         print()
  86.         i = i + 1
  87.     end
  88.     print()
  89. end
  90.  
  91.  
  92. -- Resetta il vettore (a[] -> 0)
  93. local function resetvet(a, l)
  94.     for i=1,l do
  95.         a[i] = 0
  96.     end
  97. end
  98.  
  99.  
  100. -- Caricamento da vettore a cifra singola
  101. local function vetint(a, l)
  102.     local g = 1
  103.     local k = 0
  104.  
  105.     for i=1,l do
  106.         k = k + (a[l-i+1] * g)
  107.         g = g * 10
  108.     end
  109.  
  110.     return k
  111. end
  112.  
  113.  
  114. -- Timer
  115. local function timer(t)
  116.     local i = t * 10
  117.     local s = 0
  118.     local m = 0
  119.     local h = 0
  120.     local x, y = term.getCursor()
  121.  
  122.     while i > 0 do
  123.         s = math.floor(i / 10)
  124.         m = s / 60
  125.         s = math.floor(s % 60)
  126.         m = math.floor(m % 60)
  127.         term.setCursor(1, y+1)
  128.         print(m .. ":" .. s .. "." .. i-math.floor(i/10)*10 .. "    ")
  129.         i = i - 1
  130.         os.sleep(0.1)
  131.     end
  132. end
  133.  
  134.  
  135. -- Main
  136. -- Ciclo (nel caso la password dovesse essere sbagliata)
  137. repeat
  138.     -- Resetta
  139.     resetvet(v, n)
  140.     -- Carica la password
  141.     caricavet(v, n)
  142.     -- Assegna la password alla variabile
  143.     key = vetint(v, n)
  144.  
  145.     -- Controllo password inserita
  146.     if key == piss then
  147.         -- Password corretta
  148.         print("! - Bomba armata - !")
  149.         ciclo = false
  150.         if not debug then
  151.             timer(clock)
  152.         end
  153.         print(frasi[math.random(1, c_frasi)])
  154.     else
  155.         -- Password errata
  156.         print(": - Password errata - :")
  157.         ciclo = true
  158.     end
  159. until (not ciclo)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement