Fix brainwash

Fix brainwash when TIMESKIP is on, so that users aren't able to reset
the timestamp to current time instead of a time in the future, I think.
master
jmjl 2024-02-13 05:36:49 +00:00
parent 550a2c33e2
commit c15be36df5
1 changed files with 8 additions and 2 deletions

View File

@ -28,7 +28,8 @@ def cleanwash_money(msg):
balance = Decimal(subprocess.check_output(['/home/jmjl/bin/coin','Ju','internal_balance',nick],universal_newlines=True)) balance = Decimal(subprocess.check_output(['/home/jmjl/bin/coin','Ju','internal_balance',nick],universal_newlines=True))
if balance == Decimal(0): return pinhook.plugin.message("You don't have any tildecoins with us, so you can't cleanwash") if balance == Decimal(0): return pinhook.plugin.message("You don't have any tildecoins with us, so you can't cleanwash")
subprocess.check_output(['/home/jmjl/bin/coin','Ju','add_internal_balance',nick,f'-{str(balance)}'],universal_newlines=True).strip() subprocess.check_output(['/home/jmjl/bin/coin','Ju','add_internal_balance',nick,f'-{str(balance)}'],universal_newlines=True).strip()
new_balance = Decimal(randint(80,110))/Decimal(100)*Decimal(balance) #new_balance = Decimal(randint(80,110))/Decimal(100)*Decimal(balance)
new_balance = Decimal(randint(59,110))/Decimal(100)*Decimal(balance)
new_balance = new_balance.quantize(Decimal('1.'), rounding=ROUND_DOWN) new_balance = new_balance.quantize(Decimal('1.'), rounding=ROUND_DOWN)
percentage_return = new_balance/balance * Decimal(100) percentage_return = new_balance/balance * Decimal(100)
percentage_return = percentage_return.quantize(Decimal('.00'), rounding=ROUND_DOWN) percentage_return = percentage_return.quantize(Decimal('.00'), rounding=ROUND_DOWN)
@ -40,7 +41,12 @@ def cleanwash_money(msg):
jackpot_now = str(jackpot + jackpot_balance) jackpot_now = str(jackpot + jackpot_balance)
jackpotfile.write(jackpot_now) jackpotfile.write(jackpot_now)
message = f"{msg.nick}: Cleanwashed {balance}TCN, and given the user {new_balance}TCN ({percentage_return}%) and contributed {jackpot_balance}TCN to the balance, jackpot at {jackpot_now}TCN" message = f"{msg.nick}: Cleanwashed {balance}TCN, and given the user {new_balance}TCN ({percentage_return}%) and contributed {jackpot_balance}TCN to the balance, jackpot at {jackpot_now}TCN"
util.tilde.admin_update_tilde(nick,amount=new_balance,time=msg.timestamp,comment=message) time_to_file = __import__('time').time()
if float(msg.time) - float(time) < 86400: # Limit gain time to 24 hours
time_to_file = float(msg.timestamp) + float(util.tilde.WAIT_TIME)
else:
time_to_file = float(msg.timestamp) - float(86400) + float(util.tilde.WAIT_TIME)
util.tilde.admin_update_tilde(nick,amount=new_balance,time=time_to_file,comment=message)
return pinhook.plugin.message(message) return pinhook.plugin.message(message)
@pinhook.plugin.command('&brainwashreturnbeforeplaying', help_text='Alias -- &cleanwashreturnbeforeplaying') @pinhook.plugin.command('&brainwashreturnbeforeplaying', help_text='Alias -- &cleanwashreturnbeforeplaying')