From 0149ae94d667552d7fe28e8cd937efd8cbc66ec9 Mon Sep 17 00:00:00 2001 From: Markolie Date: Sat, 20 Dec 2014 18:24:10 +0100 Subject: [PATCH] Stop Karma meta'ing --- code/WorkInProgress/ZomgPonies/karma.dm | 289 ------------------------ code/game/gamemodes/game_mode.dm | 2 +- paradise.dme | 2 +- 3 files changed, 2 insertions(+), 291 deletions(-) delete mode 100644 code/WorkInProgress/ZomgPonies/karma.dm diff --git a/code/WorkInProgress/ZomgPonies/karma.dm b/code/WorkInProgress/ZomgPonies/karma.dm deleted file mode 100644 index a97afd6d204..00000000000 --- a/code/WorkInProgress/ZomgPonies/karma.dm +++ /dev/null @@ -1,289 +0,0 @@ - - -proc/sql_report_karma(var/mob/spender, var/mob/receiver) - var/sqlspendername = spender.name - var/sqlspenderkey = spender.key - var/sqlreceivername = receiver.name - var/sqlreceiverkey = receiver.key - var/sqlreceiverrole = "None" - var/sqlreceiverspecial = "None" - - - var/sqlspenderip = spender.client.address - - if(receiver.mind) - if(receiver.mind.special_role) - sqlreceiverspecial = receiver.mind.special_role - if(receiver.mind.assigned_role) - sqlreceiverrole = receiver.mind.assigned_role - - if(!dbcon.IsConnected()) - log_game("SQL ERROR during karma logging. Failed to connect.") - else - var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/DBQuery/query = dbcon.NewQuery("INSERT INTO karma (spendername, spenderkey, receivername, receiverkey, receiverrole, receiverspecial, spenderip, time) VALUES ('[sqlspendername]', '[sqlspenderkey]', '[sqlreceivername]', '[sqlreceiverkey]', '[sqlreceiverrole]', '[sqlreceiverspecial]', '[sqlspenderip]', '[sqltime]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during karma logging. Error : \[[err]\]\n") - - - query = dbcon.NewQuery("SELECT * FROM karmatotals WHERE byondkey='[receiver.key]'") - query.Execute() - - var/karma - var/id - while(query.NextRow()) - id = query.item[1] - karma = text2num(query.item[3]) - if(karma == null) - karma = 1 - query = dbcon.NewQuery("INSERT INTO karmatotals (byondkey, karma) VALUES ('[receiver.key]', [karma])") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during karmatotal logging (adding new key). Error : \[[err]\]\n") - else - karma += 1 - query = dbcon.NewQuery("UPDATE karmatotals SET karma=[karma] WHERE id=[id]") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during karmatotal logging (updating existing entry). Error : \[[err]\]\n") - - -var/list/karma_spenders = list() - -/mob/verb/spend_karma(var/mob/M in player_list) // Karma system -- TLE - set name = "Award Karma" - set desc = "Let the gods know whether someone's been nice. " - set category = "Special Verbs" - if(!istype(M, /mob)) - usr << "\red That's not a mob. You shouldn't have even been able to specify that. Please inform TLE post haste." - return - - if(!M.client) - usr << "\red That mob has no client connected at the moment." - return - if(src.client.karma_spent) - usr << "\red You've already spent your karma for the round." - return - for(var/a in karma_spenders) - if(a == src.key) - usr << "\red You've already spent your karma for the round." - return - if(M.key == src.key) - usr << "\red You can't spend karma on yourself!" - return - if(M.client.address == src.client.address) - message_admins("\red Illegal karma spending detected from [src.key] to [M.key]. Using the same IP!") - log_game("\red Illegal karma spending detected from [src.key] to [M.key]. Using the same IP!") - usr << "\red The karma system is not available to multi-accounters." - var/choice = input("Give [M.name] good karma?", "Karma") in list("Good", "Cancel") - if(!choice || choice == "Cancel") - return - if(choice == "Good") - M.client.karma += 1 - usr << "[choice] karma spent on [M.name]." - src.client.karma_spent = 1 - karma_spenders.Add(src.key) - if(M.client.karma <= -2 || M.client.karma >= 2) - var/special_role = "None" - var/assigned_role = "None" - var/karma_diary = file("data/logs/karma_[time2text(world.realtime, "YYYY/MM-Month/DD-Day")].log") - if(M.mind) - if(M.mind.special_role) - special_role = M.mind.special_role - if(M.mind.assigned_role) - assigned_role = M.mind.assigned_role - karma_diary << "[M.name] ([M.key]) [assigned_role]/[special_role]: [M.client.karma] - [time2text(world.timeofday, "hh:mm:ss")] given by [src.key]" - - sql_report_karma(src, M) - - - - -/client/verb/check_karma() - set name = "Check Karma" - set category = "Special Verbs" - set desc = "Reports how much karma you have accrued" - - var/currentkarma=verify_karma() - usr << {"
You have [currentkarma] available."} - return - -/client/proc/verify_karma() - var/currentkarma=0 - if(!dbcon.IsConnected()) - usr << "\red Unable to connect to karma database. Please try again later.
" - return - else - var/DBQuery/query = dbcon.NewQuery("SELECT karma, karmaspent FROM karmatotals WHERE byondkey='[src.key]'") - query.Execute() - - var/totalkarma - var/karmaspent - while(query.NextRow()) - totalkarma = query.item[1] - karmaspent = query.item[2] - currentkarma = (text2num(totalkarma) - text2num(karmaspent)) -/* if(totalkarma) - usr << {"
You have [currentkarma] available.
-You've gained [totalkarma] total karma in your time here.
"} - else - usr << "Your total karma is: 0
"*/ - return currentkarma - - -/client/verb/karmashop() - set name = "karmashop" - set desc = "Spend your hard-earned karma here" - set hidden = 1 - - karmashopmenu() - return - - -/client/proc/karmashopmenu() - - var/dat = "
" - dat += "Job Unlocks" - dat += "Species Unlocks" - dat += "
" - dat += "
" - - switch(karma_tab) - if (0) // Job Unlocks - dat += {" - Unlock Barber -- 5KP
- Unlock Brig Physician -- 5KP
- Unlock Nanotrasen Recruiter -- 10KP
- Unlock Nanotrasen Representative -- 30KP
- Unlock Customs Officer -- 30P
- Unlock Blueshield -- 30KP
- Unlock Security Pod Pilot -- 30KP
- Unlock Mechanic -- 30KP
- Unlock Magistrate -- 45KP
- "} - - if (1) // Species Unlocks - dat += {" - Unlock Machine People -- 15KP
- Unlock Kidan -- 30KP
- Unlock Grey -- 30KP
- Unlock Vox -- 45KP
- Unlock Slime People -- 45KP
- "} - - dat += "PLEASE NOTE THAT PEOPLE WHO TRY TO GAME THE KARMA SYSTEM WILL END UP ON THE WALL OF SHAME. THIS INCLUDES BUT IS NOT LIMITED TO TRADES, OOC KARMA BEGGING, CODE EXPLOITS, ETC." - dat += "" - - var/datum/browser/popup = new(usr, "karmashop", "
Karma Shop
", 400, 400) - popup.set_content(dat) - popup.open(0) - return - - - -/client/proc/DB_job_unlock(var/job,var/cost) - - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM whitelist WHERE ckey='[usr.key]'") - query.Execute() - - var/dbjob - var/dbckey - while(query.NextRow()) - - dbckey = query.item[2] - dbjob = query.item[3] - if(!dbckey) - query = dbcon.NewQuery("INSERT INTO whitelist (ckey, job) VALUES ('[usr.key]','[job]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during whitelist logging (adding new key). Error : \[[err]\]\n") - message_admins("SQL ERROR during whitelist logging (adding new key). Error : \[[err]\]\n") - return - else - usr << "You have unlocked [job]." - message_admins("[key_name(usr)] has unlocked [job].") - karmacharge(cost) - - if(dbckey) - var/list/joblist = text2list(dbjob,",") - if(!(job in joblist)) - joblist += job - var/newjoblist = list2text(joblist,",") - query = dbcon.NewQuery("UPDATE whitelist SET job='[newjoblist]' WHERE ckey='[dbckey]'") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during whitelist logging (updating existing entry). Error : \[[err]\]\n") - message_admins("SQL ERROR during whitelist logging (updating existing entry). Error : \[[err]\]\n") - return - else - usr << "You have unlocked [job]." - message_admins("[key_name(usr)] has unlocked [job].") - karmacharge(cost) - else - usr << "You already have this job unlocked!" - return - - - - - -/client/proc/DB_species_unlock(var/species,var/cost) - - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM whitelist WHERE ckey='[usr.key]'") - query.Execute() - - var/dbspecies - var/dbckey - while(query.NextRow()) - - dbckey = query.item[2] - dbspecies = query.item[4] - if(!dbckey) - query = dbcon.NewQuery("INSERT INTO whitelist (ckey, species) VALUES ('[usr.key]','[species]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during whitelist logging (adding new key). Error : \[[err]\]\n") - message_admins("SQL ERROR during whitelist logging (adding new key). Error : \[[err]\]\n") - return - else - usr << "You have unlocked [species]." - message_admins("[key_name(usr)] has unlocked [species].") - karmacharge(cost) - - if(dbckey) - var/list/specieslist = text2list(dbspecies,",") - if(!(species in specieslist)) - specieslist += species - var/newspecieslist = list2text(specieslist,",") - query = dbcon.NewQuery("UPDATE whitelist SET species='[newspecieslist]' WHERE ckey='[dbckey]'") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during whitelist logging (updating existing entry). Error : \[[err]\]\n") - message_admins("SQL ERROR during whitelist logging (updating existing entry). Error : \[[err]\]\n") - return - else - usr << "You have unlocked [species]." - message_admins("[key_name(usr)] has unlocked [species].") - karmacharge(cost) - else - usr << "You already have this species unlocked!" - return - -/client/proc/karmacharge(var/cost) - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM karmatotals WHERE byondkey='[usr.key]'") - query.Execute() - - while(query.NextRow()) - var/spent = text2num(query.item[4]) - spent += cost - query = dbcon.NewQuery("UPDATE karmatotals SET karmaspent=[spent] WHERE byondkey='[usr.key]'") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during karmaspent updating (updating existing entry). Error : \[[err]\]\n") - message_admins("SQL ERROR during karmaspent updating (updating existing entry). Error : \[[err]\]\n") - return - else - usr << "You have been charged [cost]." - message_admins("[key_name(usr)] has been charged [cost].") - return diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 2ecd5bd3b8e..01ae08fdbff 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -280,7 +280,7 @@ Implants; for(var/mob/living/carbon/human/man in player_list) if(man.client && man.mind) // NT relation option var/special_role = man.mind.special_role - if (special_role == "Wizard" || special_role == "Ninja" || special_role == "Syndicate") + if (special_role == "Wizard" || special_role == "Ninja" || special_role == "Syndicate" || special_role == "Syndicate Commando" || special_role == "Vox Raider" || special_role == "Alien") continue //NT intelligence ruled out possiblity that those are too classy to pretend to be a crew. if(man.client.prefs.nanotrasen_relation == "Opposed" && prob(50) || \ man.client.prefs.nanotrasen_relation == "Skeptical" && prob(20)) diff --git a/paradise.dme b/paradise.dme index c46840053ae..4cd65106904 100644 --- a/paradise.dme +++ b/paradise.dme @@ -1022,6 +1022,7 @@ #include "code\modules\hydroponics\seed_mobs.dm" #include "code\modules\hydroponics\seeds.dm" #include "code\modules\hydroponics\vines.dm" +#include "code\modules\karma\karma.dm" #include "code\modules\library\lib_items.dm" #include "code\modules\library\lib_machines.dm" #include "code\modules\library\lib_readme.dm" @@ -1615,7 +1616,6 @@ #include "code\WorkInProgress\Sayu\programmable.dm" #include "code\WorkInProgress\Sayu\random_items.dm" #include "code\WorkInProgress\SkyMarshal\Ultralight_procs.dm" -#include "code\WorkInProgress\ZomgPonies\karma.dm" #include "code\WorkInProgress\ZomgPonies\clothing\civilian.dm" #include "code\WorkInProgress\ZomgPonies\mobs\pony.dm" #include "code\WorkInProgress\ZomgPonies\oldcode\turntable.dm"