Overhauls and 2/28 sync (#244)

* map tweaks/shuttle engines

* helpers and defines

* global/onclick

* controllers and datums

* mapping

* game folder

* some other stuff

* some modules

* modules that aren't mobs

* some mob stuff

* new player stuff

* mob living

* silicon stuff

* simple animal things

* carbon/ayylmao

* update_icons

* carbon/human

* sounds and tools

* icons and stuff

* hippie grinder changes + tgui

* kitchen.dmi

* compile issues fixed

* mapfix

* Mapfixes 2.0

* mapedit2.0

* mapmerger pls

* Revert "mapedit2.0"

This reverts commit 74139a3cacea10df7aafca06c0a10bd3daf3a481.

* clean up vore folder + 2 hotfixes

* admin ticket refinement

* Blob tweaks and LAZYADD

* LAZYADD IS LAZY

* Magic strings purged

* DEFINES NEED HIGHER PRIORITIES

* Only a sleepless idiot deals in absolute TRUE|FALSE

* u h g

* progress bar fix

* reverts ticket logs

* there's always that one guy

* fixes and stuff

* 2/27 fixes

* game folder stuff

* stats

* some modules again

* clothing stuff

gets vg clothing out of the main files

* everything not mobs again

* mob stuff

* maps, tgui, sql stuff

* icons

* additional fixes and compile errors

* don't need this anymore

* Oh right this isn't needed anymore

* maint bar re-added

* that doesn't need to be here

* stupid events

* wtfeven

* probably makes Travis happy

* don't care to fix the grinder atm

* fixes vending sprites, changes turret

* lethal, not lethals

* overylays are finicky creatures

* lazy fix for bleeding edgy (#252)

* map tweaks/shuttle engines

* helpers and defines

* global/onclick

* controllers and datums

* mapping

* game folder

* some other stuff

* some modules

* modules that aren't mobs

* some mob stuff

* new player stuff

* mob living

* silicon stuff

* simple animal things

* carbon/ayylmao

* update_icons

* carbon/human

* sounds and tools

* icons and stuff

* hippie grinder changes + tgui

* kitchen.dmi

* compile issues fixed

* mapfix

* Mapfixes 2.0

* mapedit2.0

* mapmerger pls

* Revert "mapedit2.0"

This reverts commit 74139a3cacea10df7aafca06c0a10bd3daf3a481.

* clean up vore folder + 2 hotfixes

* admin ticket refinement

* Blob tweaks and LAZYADD

* LAZYADD IS LAZY

* Magic strings purged

* DEFINES NEED HIGHER PRIORITIES

* Only a sleepless idiot deals in absolute TRUE|FALSE

* u h g

* progress bar fix

* reverts ticket logs

* there's always that one guy

* fixes and stuff

* 2/27 fixes

* game folder stuff

* stats

* some modules again

* clothing stuff

gets vg clothing out of the main files

* everything not mobs again

* mob stuff

* maps, tgui, sql stuff

* icons

* additional fixes and compile errors

* don't need this anymore

* Oh right this isn't needed anymore

* maint bar re-added

* that doesn't need to be here

* stupid events

* wtfeven

* probably makes Travis happy

* don't care to fix the grinder atm

* fixes vending sprites, changes turret

* lethal, not lethals

* overylays are finicky creatures
This commit is contained in:
Poojawa
2017-02-28 09:30:49 -06:00
committed by GitHub
parent 93782cf716
commit 0bca862419
544 changed files with 309981 additions and 81206 deletions
+7 -9
View File
@@ -220,7 +220,7 @@ var/next_external_rsc = 0
connection_time = world.time
connection_realtime = world.realtime
connection_timeofday = world.timeofday
winset(src, null, "command=\".configure graphics-hwmode on\"")
if (byond_version < config.client_error_version) //Out of date client.
src << "<span class='danger'><b>Your version of byond is too old:</b></span>"
src << config.client_error_message
@@ -350,8 +350,7 @@ var/next_external_rsc = 0
if (IsGuestKey(src.key))
return
establish_db_connection()
if(!dbcon.IsConnected())
if(!dbcon.Connect())
return
var/sql_ckey = sanitizeSQL(src.ckey)
@@ -372,13 +371,12 @@ var/next_external_rsc = 0
if (IsGuestKey(src.key))
return
establish_db_connection()
if (!dbcon.IsConnected())
if (!dbcon.Connect())
return
var/sql_ckey = sanitizeSQL(ckey)
var/DBQuery/query_ip = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE ip = '[address]' AND ckey != '[sql_ckey]'")
var/DBQuery/query_ip = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE ip = INET_ATON('[address]') AND ckey != '[sql_ckey]'")
query_ip.Execute()
related_accounts_ip = ""
while(query_ip.NextRow())
@@ -402,12 +400,11 @@ var/next_external_rsc = 0
var/sql_admin_rank = sanitizeSQL(admin_rank)
var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("player")] (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), '[sql_ip]', '[sql_computerid]', '[sql_admin_rank]') ON DUPLICATE KEY UPDATE lastseen = VALUES(lastseen), ip = VALUES(ip), computerid = VALUES(computerid), lastadminrank = VALUES(lastadminrank)")
var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("player")] (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), INET_ATON('[sql_ip]'), '[sql_computerid]', '[sql_admin_rank]') ON DUPLICATE KEY UPDATE lastseen = VALUES(lastseen), ip = VALUES(ip), computerid = VALUES(computerid), lastadminrank = VALUES(lastadminrank)")
query_insert.Execute()
//Logging player access
var/serverip = "[world.internet_address]:[world.port]"
var/DBQuery/query_accesslog = dbcon.NewQuery("INSERT INTO `[format_table_name("connection_log")]` (`id`,`datetime`,`serverip`,`ckey`,`ip`,`computerid`) VALUES(null,Now(),'[serverip]','[sql_ckey]','[sql_ip]','[sql_computerid]');")
var/DBQuery/query_accesslog = dbcon.NewQuery("INSERT INTO `[format_table_name("connection_log")]` (`id`,`datetime`,`server_ip`,`server_port`,`ckey`,`ip`,`computerid`) VALUES(null,Now(),INET_ATON('[world.internet_address]'),'[world.port]''[sql_ckey]',INET_ATON('[sql_ip]'),'[sql_computerid]');")
query_accesslog.Execute()
/client/proc/check_randomizer(topic)
@@ -577,6 +574,7 @@ var/next_external_rsc = 0
if ("key")
return FALSE
/client/proc/change_view(new_size)
if (isnull(new_size))
CRASH("change_view called without argument.")
+1 -1
View File
@@ -191,7 +191,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
default_slot = sanitize_integer(default_slot, 1, max_save_slots, initial(default_slot))
toggles = sanitize_integer(toggles, 0, 65535, initial(toggles))
clientfps = sanitize_integer(clientfps, 0, 1000, 0)
parallax = sanitize_integer(parallax, PARALLAX_INSANE, PARALLAX_DISABLE, PARALLAX_HIGH)
parallax = sanitize_integer(parallax, PARALLAX_INSANE, PARALLAX_DISABLE, null)
ghost_form = sanitize_inlist(ghost_form, ghost_forms, initial(ghost_form))
ghost_orbit = sanitize_inlist(ghost_orbit, ghost_orbits, initial(ghost_orbit))
ghost_accs = sanitize_inlist(ghost_accs, ghost_accs_options, GHOST_ACCS_DEFAULT_OPTION)
-1
View File
@@ -2,7 +2,6 @@
/mob/living/carbon/human/verb/suicide()
set hidden = 1
return
if(!canSuicide())
return
var/oldkey = ckey
+14 -28
View File
@@ -2,44 +2,32 @@
set name = "Who"
set category = "OOC"
var/msg = ""
var/list/Lines = list()
var/msg = "--------\n"
if(length(admins) > 0)
Lines += "<b>Admins:</b>"
for(var/client/C in sortList(admins))
if(C.holder)
if(!C.holder.fakekey)
Lines += "<font color='#FF0000'>[C.key]</font>[show_info(C)]"
if(!C.holder.fakekey)
Lines += "\t <font color='#FF0000'>[C.key]</font>[show_info(C)]"
if(length(mentors) > 0)
Lines += "<b>Mentors:</b>"
for(var/client/C in sortList(clients))
var/mentor = mentor_datums[C.ckey]
if(mentor)
Lines += "<font color='#0033CC'>[C.key]</font>[show_info(C)]"
Lines += "\t <font color='#0033CC'>[C.key]</font>[show_info(C)]"
var/player_text = ""
var/display_count = 0 //Used to detect as to whether or not we should display the players list
Lines += "<b>Players:</b>"
for(var/client/C in sortList(clients))
if(C.holder)
if(C.holder.fakekey)
display_count++
player_text += "[C.holder.fakekey][show_info(C)]\n"
else if(!check_mentor_other(C))
display_count++
player_text += "[C.key][show_info(C)]\n"
if(display_count > 0)
Lines += "<b>Players:</b>"
Lines += player_text
if(!check_mentor_other(C) || (C.holder && C.holder.fakekey))
Lines += "\t [C.key][show_info(C)]"
for(var/line in Lines)
msg += "[line]\n"
msg += "<b>Total Players: [length(clients)]</b>\n"
msg += "--------"
msg += "<b>Total Players: [length(Lines)]</b>"
src << msg
/client/proc/show_info(var/client/C)
@@ -49,7 +37,7 @@
if(!src.holder)
return ""
var/entry = "\t[C.key]"
var/entry = ""
if(C.holder && C.holder.fakekey)
entry += " <i>(as [C.holder.fakekey])</i>"
if (isnewplayer(C.mob))
@@ -74,7 +62,6 @@
entry += " ([round(C.avgping, 1)]ms)"
return entry
/client/verb/adminwho()
set category = "Admin"
set name = "Adminwho"
@@ -89,7 +76,7 @@
if(isobserver(C.mob))
msg += " - Observing"
else if(istype(C.mob,/mob/new_player))
else if(isnewplayer(C.mob))
msg += " - Lobby"
else
msg += " - Playing"
@@ -99,15 +86,16 @@
msg += "\n"
else
for(var/client/C in admins)
if(C.is_afk())
continue //Don't show afk admins to adminwho
if(!C.holder.fakekey)
msg += "\t[C] is a [C.holder.rank]\n"
msg += "<span class='info'>Adminhelps are also sent to IRC. If no admins are available in game adminhelp anyways and an admin on IRC will see it and respond.</span>"
src << msg
/client/verb/mentorwho()
set category = "Mentor"
set name = "Mentorwho"
var/msg = "<b>Current Mentors:</b>\n"
for(var/client/C in mentors)
var/suffix = ""
@@ -121,7 +109,5 @@
if(C.is_afk())
suffix += " (AFK)"
msg += "\t[C][suffix]\n"
src << msg