From 35e4471cab55f114036948c4484d9c97524c6650 Mon Sep 17 00:00:00 2001 From: Ren Erthilo Date: Tue, 28 Feb 2012 17:43:46 +0000 Subject: [PATCH 01/12] Added 6 female (mostly) hairstyles. --- .../mob/new_player/sprite_accessories.dm | 23 ++++++++++++++++++ icons/mob/human_face.dmi | Bin 10894 -> 15677 bytes 2 files changed, 23 insertions(+) diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index a24caf0e944..a0c5ec98152 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -107,6 +107,14 @@ name = "Bedhead 2" icon_state = "hair_bedhead" + bedhead3 + name = "Bedhead 3" + icon_state = "hair_bedheadv2" + + bedhead4 + name = "Bedhead 4" + icon_state = "hair_bedheadalt" + dreadlocks name = "Dreadlocks" icon_state = "hair_dreads" @@ -124,6 +132,21 @@ icon_state = "bald" choose_female = 0 + longalt + name = "Long Hair Alt" + icon_state = "hair_longfringe" + + longestalt + name = "Longest Hair Alt" + icon_state = "hair_vlongfringe" + + himecut + name = "Hime Cut" + icon_state = "hair_himecut" + + curls + name = "Curls" + icon_state = "hair_curls" /* diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index 9e066874506498fbec82a71bd7069c691e175662..7a887b8cdc84c560d53b779838aa72ee6af73eb0 100644 GIT binary patch literal 15677 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 Date: Tue, 28 Feb 2012 19:58:30 -0800 Subject: [PATCH 02/12] Bugfix to preconfigured skillsets. --- code/modules/mob/new_player/preferences.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/new_player/preferences.dm b/code/modules/mob/new_player/preferences.dm index 2505bee7dbe..98e5b073822 100644 --- a/code/modules/mob/new_player/preferences.dm +++ b/code/modules/mob/new_player/preferences.dm @@ -514,8 +514,8 @@ datum/preferences if(!selected) return ZeroSkills(1) - skills = SKILL_PRE[selected] - ZeroSkills() + for(var/V in SKILL_PRE[selected]) + skills[V] = SKILL_PRE[selected][V] used_skillpoints = 0 for(var/V in skills) used_skillpoints += skills[V] From 0f537bb9970ed8e0b74d904abf01ed0178c0e9f7 Mon Sep 17 00:00:00 2001 From: Ren Erthilo Date: Tue, 28 Feb 2012 19:11:40 +0000 Subject: [PATCH 03/12] Edited some manuals and pointed some to wiki pages. --- baystation12.dme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/baystation12.dme b/baystation12.dme index e4c8cc0ca79..3d683c1bb8e 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -520,7 +520,7 @@ #include "code\game\machinery\computer\id.dm" #include "code\game\machinery\computer\lockdown.dm" #include "code\game\machinery\computer\medical.dm" -#include "code\game\machinery\computer\operating.dm" +#include "code\game\machinery\computer\Operating.dm" #include "code\game\machinery\computer\power.dm" #include "code\game\machinery\computer\robot.dm" #include "code\game\machinery\computer\security.dm" From 1d858a75a37698eb9edc387907846d8005f2a7c7 Mon Sep 17 00:00:00 2001 From: Ren Erthilo Date: Tue, 28 Feb 2012 19:15:21 +0000 Subject: [PATCH 04/12] Accidentally picked the wrong files... --- baystation12.dme | 2 +- code/game/objects/items/weapons/manuals.dm | 420 +++++---------------- 2 files changed, 85 insertions(+), 337 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index 3d683c1bb8e..e4c8cc0ca79 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -520,7 +520,7 @@ #include "code\game\machinery\computer\id.dm" #include "code\game\machinery\computer\lockdown.dm" #include "code\game\machinery\computer\medical.dm" -#include "code\game\machinery\computer\Operating.dm" +#include "code\game\machinery\computer\operating.dm" #include "code\game\machinery\computer\power.dm" #include "code\game\machinery\computer\robot.dm" #include "code\game\machinery\computer\security.dm" diff --git a/code/game/objects/items/weapons/manuals.dm b/code/game/objects/items/weapons/manuals.dm index 161fcab6d3f..b634e20692f 100644 --- a/code/game/objects/items/weapons/manuals.dm +++ b/code/game/objects/items/weapons/manuals.dm @@ -20,7 +20,7 @@ - + @@ -83,7 +83,7 @@ - + @@ -156,8 +156,7 @@

Growing Humans

- Why would you want to grow humans? Well I'm expecting most readers to be in the slave trade, but a few might actually - want to revive fallen comrades. Growing pod people is easy, but prone to disaster. + Maybe Genetics is damaged, or maybe you just want to experiment, either way, growing humans is rather simple.

  1. Find a dead person who is in need of cloning.
  2. @@ -182,78 +181,67 @@ dat = {" - - - - -

    How to Clone People

    - So there’s 50 dead people lying on the floor, chairs are spinning like no tomorrow and you haven’t the foggiest idea of what to do? Not to worry! This guide is intended to teach you how to clone people and how to do it right, in a simple step-by-step process! If at any point of the guide you have a mental meltdown, genetics probably isn’t for you and you should get a job-change as soon as possible before you’re sued for malpractice. - -
      -
    1. Acquire body
    2. -
    3. Strip body
    4. -
    5. Put body in cloning machine
    6. -
    7. Scan body
    8. -
    9. Clone body
    10. -
    11. Get clean Structurel Enzymes for the body
    12. -
    13. Put body in morgue
    14. -
    15. Prepare Cryo
    16. -
    17. Await cloned body
    18. -
    19. Put body in cryo
    20. -
    21. Use the clean SW injector
    22. -
    23. Give person clothes back
    24. -
    25. Send person on their way
    26. -
    - -

    Step 1: Acquire body

    - This is pretty much vital for the process because without a body, you cannot clone it. Usually, bodies will be brought to you, so you do not need to worry so much about this step. If you already have a body, great! Move on to the next step. - -

    Step 2: Strip body

    - The cloning machine does not like abiotic items. What this means is you can’t clone anyone if they’re wearing clothes, so take all of it off. If it’s just one person, it’s courteous to put their possessions in the closet. If you have about seven people awaiting cloning, just leave the piles where they are, but don’t mix them around and for God’s sake don’t let the Clown in to steal them. - -

    Step 3: Put body in cloning machine

    - Grab the body and then put it inside the DNA modifier. If you cannot do this, then you messed up at Step 2. Go back and check you took EVERYTHING off - a commonly missed item is their headset. - -

    Step 4: Scan body

    - Go onto the computer and scan the body by pressing ‘Scan - ’. If you’re successful, they will be added to the records (note that this can be done at any time, even with living people, so that they can be cloned without a body in the event that they are lying dead on port solars and didn‘t turn on their suit sensors)! If not, and it says “Error: Mental interface failure.”, then they have left their bodily confines and are one with the spirits. If this happens, just shout at them to get back in their body, click ‘Refresh‘ and try scanning them again. If there’s no success, threaten them with gibbing. Still no success? Skip over to Step 7 and don‘t continue after it, as you have an unresponsive body and it cannot be cloned. If you got “Error: Unable to locate valid genetic data.“, you are trying to clone a monkey - start over. - -

    Step 5: Clone body

    - Now that the body has a record, click ’View Records’, click the subject’s name, and then click ‘Clone’ to start the cloning process. Congratulations! You’re halfway there. Remember not to ‘Eject’ the cloning pod as this will kill the developing clone and you’ll have to start the process again. - -

    Step 6: Get clean SEs for body

    - Cloning is a finicky and unreliable process. Whilst it will most certainly bring someone back from the dead, they can have any number of nasty disabilities given to them during the cloning process! For this reason, you need to prepare a clean, defect-free Structural Enzyme (SE) injection for when they’re done. If you’re a competent Geneticist, you will already have one ready on your working computer. If, for any reason, you do not, then eject the body from the DNA modifier (NOT THE CLONING POD) and take it next door to the Genetics research room. Put the body in one of those DNA modifiers and then go onto the console. Go into View/Edit/Transfer Buffer, find an open slot and click “SE“ to save it. Then click ‘Injector’ to get the SEs in syringe form. Put this in your pocket or something for when the body is done. - -

    Step 7: Put body in morgue

    - Now that the cloning process has been initiated and you have some clean Structural Enzymes, you no longer need the body! Drag it to the morgue and tell the Chef over the radio that they have some fresh meat waiting for them in there. To put a body in a morgue bed, simply open the tray, grab the body, put it on the open tray, then close the tray again. Use one of the nearby pens to label the bed “CHEF MEAT” in order to avoid confusion. - -

    Step 8: Prepare cryo

    - Go to the freezer room, wrench in the cannisters, and set the freezer to lowest. Put a beaker of cryodaxone or clonexadone in on of the cryo tubes. - -

    Step 9: Await cloned body

    - Now go back to the lab and wait for your patient to be cloned. It won’t be long now, I promise. - -

    Step 10: Put body in cryo

    - Fetch a stretcher, put your patient on it, move to the freezer room, dump the body in the tube and turn it on. Patient will start regenerating once his temperature goes below 170K. Make sure there's a beaker in the tube. - -

    Step 11: Use the clean SE injector on person

    - Has your body been cloned yet? Great! As soon as the guy pops out, grab your injector and jab it in them. Once you’ve injected them, they now have clean Structural Enzymes and their defects, if any, will disappear in a short while. - -

    Step 12: Give person clothes back

    - Obviously the person will be naked after they have been cloned. Provided you weren’t an irresponsible little shit, you should have protected their possessions from thieves and should be able to give them back to the patient. No matter how cruel you are, it’s simply against protocol to force your patients to walk outside naked. - -

    Step 13: Send person on their way

    - Give the patient one last check-over - make sure they don’t still have any defects and that they have all their possessions. Ask them how they died, if they know, so that you can report any foul play over the radio. Once you’re done, your patient is ready to go back to work! Chances are they do not have Medbay access, so you should let them out of Genetics and the Medbay main entrance. - -

    If you’ve gotten this far, congratulations! You have mastered the art of cloning. Now, the real problem is how to resurrect yourself after that traitor had his way with you for cloning his target. - - +

    Cloning

    +

    You can clone people from scans made while they are alive and well (which is preferred). Feel free to call people to get their backups made - especially for Heads of Staff. +

    +

    Scan

    +

    The first thing that a clone needs is a record in the cloning console. Scanning requires a dead or live human body (monkeys won't work), whereas making the actual clone requires the person to be dead. +

    +
    1. Make sure the person is not wearing anything. +
      • If the person is alive, have them strip. +
      • If the person is dead, click+drag their body onto yours to bring up their clothing window, then click on the links identifying each piece of clothing to remove it. +
      +
    2. Grab the person. +
    3. Click on the DNA scanner to place them inside. +
    4. Click on the cloning console to bring up its menu. +
    5. Click Scan. +
      • Note: If you see Mental Interface Error, wait a few seconds and try again. If it still comes up, the body is not viable for cloning (they logged off) and should be taken to the morgue. +
      +
    6. Click View Records to make sure their record is listed in the cloning database. +
    +

    Making the Clone

    +

    Remember, a clone can only be made when the person you're making a clone for is dead. If they aren't dead, you'll see a "Unable to initiate cloning cycle" error in the Cloning System Control. +

    +
    1. Head to the cloning console beside the cloning pod, and click on it to open its menu. +
    2. Click View Records, select the person you wish to clone, then click Clone. +
      • Note: After clicking "Clone" the dead person will get a pop-up window asking if they want to come back to life. If they choose "No", the console will say "Unable to initiate cloning cycle". If they choose "Yes", the console will say "Cloning cycle activated", and their body will be remade in a few minutes. +
      • Note #2: When a new clone is made, that person's record is deleted from the database, so they must be scanned again if they are to be cloned a second time. +
      +
    +

    Finishing a New Clone

    +
    1. Grab the new clone and take it to Cryo, the room with large cryo cells. +
    2. Click on one of the cells to place the clone inside and set the Cryo status to On. +
    3. Take a nearby beaker filled with Cryoxadone and then click on the same cell you placed the clone in to load the beaker into the cell. +
      • Note: At this point, the clone will begin to heal slowly, shown by the increasing health indication in the cryo cell's menu. If you wish to speed up the effect, continue with the next steps. +
      +
    4. Use the nearby on both O2 canisters to secure them (if they aren't already). +
    5. Put the wrench down, then click on both O2 canisters and Open them. +
    6. Set the freezer's Target gas temperature to its lowest amount by clicking on the far-left "-" until the number in the center no longer decreases. +
    7. Set the freezer to On. +
    8. Click on the cyro cell to check on your clone. When its health reaches 100, it is considered finished and can then be ejected (right-click > Eject Occupant). +
      • Note: Though waiting for the health to reach 100 is optimum, in emergencies when the cryo cells are needed the clone can be ejected at ~50 health and finished in a sleeper. +
      +
    9. Don't forget! when you're done with the cryo room, turn everything to Off or Closed so the room doesn't get freezing cold! Also, if you still have their old body, drag it to the morgue to prevent Clone Memory Disorder (which is purely for role-play purposes). +
    +

    Clone Memory Disorder

    +

    There are a few basic rules that apply to most patients, all symptoms of Clone Memory Disorder.
    +It is caused by the unexpected circumstances after awakening in cryo (if cloned from a backup), or the traumatizing experience of death which is much worse, (if cloned from the corpse). +

    These are the usual symptoms. +

    +
    1. They will be disoriented after being cloned. +
    2. They will have forgotten about their death/everything that happened after the backup. +
    3. They will sometimes feel strange urges or fears when confronted with anything that can be directly related to their death. (Only if cloned from the corpse). See also Symptoms of Trauma for how people in reality would possibly react (read this if you are unsure how to RP Clone Memory Disorder for when you get cloned from a corpse). +
    +

    This applies for cloned criminals as well! +

    Take an example clone. He died under suspicious circumstances, but we always take good care of our patients, and we do not want them to commit suicide or fall into manic depression. As such, we will have to prevent any Post-Mortem Traumatic Relapses (Refer to it as 'complications' to less scientific personnel). +

    +
    • The first thing to do is ask the patient how they feel. +
    • Symptom 1 of CMD will most of the time be apparent in the subject. +
    • They will most likely ask questions about why they are there. +
    • Give an excuse: Tell them that they have hurt their head, were wounded, or otherwise put into cryo. (You might also want to tell them that they fainted after their back-up, which is common for patients that were nervous to get into the machine.) +
    • Inform all involved personnel of the excuse. +
    "} @@ -312,10 +300,10 @@
  3. Secure the mainboard with a screwdriver.
  4. Install the peripherals control module (Not included. Use supplied datadisk to create one).
  5. Secure the peripherals control module with a screwdriver
  6. -
  7. Install the internal armor plating (Not included due to Nanotrasen regulations. Can be made using 5 metal sheets.)
  8. +
  9. Install the internal armor plating (Not included due to NanoTrasen regulations. Can be made using 5 metal sheets.)
  10. Secure the internal armor plating with a wrench
  11. Weld the internal armor plating to the chassis
  12. -
  13. Install the external reinforced armor plating (Not included due to Nanotrasen regulations. Can be made using 5 reinforced metal sheets.)
  14. +
  15. Install the external reinforced armor plating (Not included due to NanoTrasen regulations. Can be made using 5 reinforced metal sheets.)
  16. Secure the external reinforced armor plating with a wrench
  17. Weld the external reinforced armor plating to the chassis
@@ -418,7 +406,7 @@ This useful piece of equipment will suck power out of the power systems to charge a cyborg's power cell back up to full charge.

Robotics Control Console

- This useful piece of equipment can be used to immobolize or destroy a cyborg. A word of warning: Cyborgs are expensive pieces of equipment, do not destroy them without good reason, or Nanotrasen may see to it that it never happens again. + This useful piece of equipment can be used to immobolize or destroy a cyborg. A word of warning: Cyborgs are expensive pieces of equipment, do not destroy them without good reason, or NanoTrasen may see to it that it never happens again.

Cyborg Modules

@@ -565,7 +553,7 @@
  • Expose the cyborg's internal wiring
  • Check to make sure the LawSync and AI Sync lights are lit
  • If they are not lit, pulse the LawSync wire using a multitool to enable the cyborg's Law Sync
  • -
  • Proceed to a cyborg upload console. Nanotrasen usually places these in the same location as AI uplaod consoles.
  • +
  • Proceed to a cyborg upload console. NanoTrasen usually places these in the same location as AI uplaod consoles.
  • Use a "Reset" upload moduleto reset the cyborg's laws
  • Proceed to a Robotics Control console
  • Remove the lockdown on the cyborg
  • @@ -573,7 +561,7 @@

    As a last resort

    If all else fails in a case of cyborg-related emergency. There may be only one option. Using a Robotics Control console, you may have to remotely detonate the cyborg. -

    WARNING:

    Do not detonate a borg without an explicit reason for doing so. Cyborgs are expensive pieces of Nanotrasen equipment, and you may be punished for detonating them without reason. +

    WARNING:

    Do not detonate a borg without an explicit reason for doing so. Cyborgs are expensive pieces of NanoTrasen equipment, and you may be punished for detonating them without reason. @@ -581,226 +569,22 @@ /obj/item/weapon/book/manual/security_space_law name = "Space Law" - desc = "A set of Nanotrasen guidelines for keeping law and order on their space stations." + desc = "A set of NanoTrasen guidelines for keeping law and order on their space stations." icon_state = "bookSpaceLaw" - author = "Nanotrasen Inc." + author = "NanoTrasen Inc." dat = {" + -

    If you can't find the crime listed in here you need to set up a proper trial Go here: Legal Standard Operating Procedure

    -

    The time you took for bringing the suspect in and the time you spend questioning are NOT to be calculated into this. This is the pure time someone spends in a cell starring at the wall.
    - On laggy games first take a look at how quickly the cell timer tick... we don't want people to spend an eternity in jail for staling a pair of gloves. I am sure you have a system clock on your PC that you can keep an eye on.

    -

    The maximum time someone can be put in jail for is 10 minutes (exceptions are listed below)
    - Always remember that when you add crimes together!

    -


    - Note: Compare the ingame version of this found in Security with the version on the wiki regularly. If the ingame version differs, follow the rules on the wiki, since they are easier to update. - Link to the wiki page: http://wiki.baystation12.co.cc/index.php/Security_Sentences - Compare changes here: http://wiki.baystation12.co.cc/index.php?title=Security_Sentences&action=history

    - -

    Minor Crimes

    - - - - - - - - - - - - - - - - -
    Crime - Description - Punishment - Notes -
    Resisting Arrest - Not cooperating with the officer who demands you turn yourself in peacefully. Shouting "No!" or otherwise making the officer have the need to tase you to put handcuffs on. - +30 seconds to original time - See manhunt if the suspect runs away. Or attack on an officer if he fights back. This is for shouting/swearing and moving around a bit (just so you cant cuff him) only. -
    Petty Theft - Stealing non-crucial items from the ship. Items can include anything from toolboxes to metal to insulated gloves. To steal something the person must take it from a place which he doesn't have access to. - 60 seconds (Half the time of Theft) - Remember to take the items away from them and return them to where they stole them. -
    Theft - Stealing of important, dangerous or otherwise crucial items like IDs, weapons or something similar. To steal something the person must take it from a place which he doesn't have access to. - 2 minutes (2x the time of Petty Theft) - Remember to take the items away from them and return them to where they stole them. Compare Robbery. -
    Robbery - Robbery is stealing items from another person's possession. This can be the stealing of ID's, backpack contents or anything else. - 1m 30s (3m) - Remember to take the stolen items from the person and return them, if you can find the person they've been stolen from. Otherwise put them in a locker in security. Taking the items for yourself is considered stealing!! Remember to double the time if the robbed item was an ID or something else crucial or dangerous. Compare Theft and Petty Theft. -
    Assault - To assault means to attack someone without causing them to die and without the intent to kill them. - 3m - Example: Knocking someone out to take their ID yields: Assault + Robbery -
    Trespassing - Trespassing means to be in an area which you don't have access to. - Remove from area, if the crime is repeated imprison for 60s - -
    Indecent Exposure or being a nuisance - Running around the ship naked, yelling at people for no reason (don't arrest someone because they are arguing), throwing around stuff where it could hit someone, etc. - 30s - Drunks can be keep to sober up, but only if they are badly harassing other crew members. Regular drunks don't get arrested and if they are only a nuisance you keep them for the regular time. -
    -

    Medium Crimes

    - - - - - - - - - - - - - - - - - - - - -
    Crime - Description - Punishment - Notes -
    Assault with a deadly or dangerous weapon - Getting assaulted with a knife or tased without the intention of your attacker killing you. - 5m - Usual weapons: Stun baton, taser or other gun, wirecutters, knife or scalpel, crowbar or fire extinguisher/oxygen tank. -
    Assault on an officer - Assault with whichever weapon or object on an officer. An officer is defined as either a member of the security force (forensic technician included) or one of the heads of staff. - 5m - Don't abuse him. I know you want to, but don't. At least try not to. You'll get fired. Most likely. -
    Unlawful conduct or negligence resulting in ship damage or harm to crewmen. - It's impossible to list everything that can lead up to this. Starting a fire in toxins is one thing, smashing windows and major vandalism is another, as is putting someone else in harms way. If you can't put it somewhere else, bets are good that it is this. If it is still not this, you need a trial. - 3m 30s - If someone dies directly related to it, add manslaughter. -
    Manslaughter - Manslaughter is the unintentional killing of a fellow human being. If you cause a fire in toxins and someone else get's trapped and dies, that's manslaughter. - 5m - If there is the intention to kill, it's murder. -
    Theft of a high value item - Stealing something which we know traitors often want. - 3m - Theft of a rapid construction device (RCD), Captain's jumpsuit, Hand teleporter, captain's antique laser or other items which the traitors want. Note that they have to be kept in areas which this person doesn't have access to. -
    Threatening Ship Integrity - To threaten the ships integrity means to cause mediocre damage to the ships atmosphere, this means to create an air or gas leak that affects a vital part of the ship, or destroying an interior wall. - 5m - If it wasn't on purpose or if the damage is easily fixed see Unlawful conduct. -
    Threatening Power Supply - Cutting power lines, shutting down power storage units, engine's power generators, etc. - 4m + remove insulated gloves and wirecutters and anything else that might be related, like engineering access. - This does not include blowing up the Engine. See Compromising Ship Integrity further down. -
    Sparking a man-hunt or chase - This means the officer needs to chase after you to catch you. It means you actually flee from the scene. - +3m to original time - This will happen to you often... -
    Escape attempt - Attempting to escape from the brig. - +2m to current time, this can exceed the maximum jail time. - It's the job of the officer to prevent such events. -
    -

    Major Crimes

    - - - - - - - - - - - - -
    Crime - Description - Punishment - Notes -
    Identity Theft - Stealing someones ID and/or other objects of identification with the purpose to appear to others as them or to enter into areas where the suspect would normally not have access. - 10 minutes - The case of impersonation regarding ship equipment(doors, computer terminals, AI, etc) or personnel has to be proven, otherwise see Petty Theft/Robbery. Remember to double the time if the object was an ID or something similar crucial (Compare Petty Theft). -
    Syndicate collaboration - Being either a traitor, a syndicate operative or a head revolutionary - Until the end of the round
    (disregard maximum sentence time)
    or DEATH
    (if approved by the Captain) -
    You have two choices: Killing them or permabrigging them. If you choose to kill them, first ask for permission from the Captain. If permission is given, it is wise to first Adminhelp your intentions. Adminhelp something like: "I have grounds to believe X is a rev head. I have him locked in the brig and intend to kill him. If you have any objections to this action, please contact me." then wait for about a minute. If no PM comes, proceed to kill him. The other option is to permabrig them. This simply means you put them in the brig and don't ever let them out until your are going to evac. Then cuff them and secure them on one of the pods. (Note that Head Revolutionaries MUST be executed for you to win the round.) -
    Murder - Killing someone with the intent to kill. - Death Sentence if authorised by the Captain. Otherwise brigging for the rest of the round. - Not to be confused with Manslaughter. Hint: Cyborgification is a valid execution method, since he will be bound by laws. -
    Attempted Murder - Attempting to kill someone. The victim survives. - See Murder - Regardless if you succeed or not, if you try to commit murder, the punishment is the same! You have to be sure there was intent to kill though! -
    Compromising Ship Integrity - Compromising a large part of the Ships atmosphere or integrity. - 10m (You are going to evac anyway. Cuff him and secure him on a pod.) - Blowing up the Engine is included here. -
    -

    Parole Circumstances

    -

    Okay, we've covered all the punishments. Now for the parole circumstances. These circumstances will shorten your prisoner's time in jail. -

    Note that all of these add up to a maximum of 33%!! -

    - - - - - - - - - - - - - - -
    Crime - Description - Benefit - Notes -
    Good behavior - Behaving well, not attempting any problems or causing riots or screaming and yelling. - -20% of original time - It sounds like a good deal... but few will actually take it. -
    Reeducation - Getting de-converted from revolutionary, renouncing traitoring (must be arranged with admins), etc. (most of these must be arranged with admins) - -15% of original time - -
    Cooperation with prosecution or security - Being helpful to the members of security, revealing things during questioning or providing names of head revolutionaries. - -10% - In the case of revealing a head revolutionary: Immediate release -
    Surrender - Coming to the brig, confessing what you've done and taking the punishment. - -25% - Getting arrested without putting a fuss is not surrender. For this, you have to actually come to the brig yourself. -
    Immediate threat to the prisoner - Call for evac, atmospheric problems in the Brig or SecHQ area, threat of being overrun by revolutionaries, etc - Immediately move the prisoner.
    If that is not possible: Immediate Release! -
    Keep in mind the time until they get released. Exception is if the person is a CONFIRMED traitor, syndicate operative or head of revolutionary. In those cases you can leave them to die. -
    Medical reasons - The person needs immediate medical attention - Immediate escort to medbay - The sentence timer continues to tick while he's at medbay, it's not paused. -
    - + + - "} + + "} /obj/item/weapon/book/manual/engineering_guide name = "Engineering Textbook" @@ -813,7 +597,7 @@ - + @@ -826,51 +610,15 @@ icon_state = "cooked_book" author = "Lord Frenrir Cageth" - dat = {" - - - - + dat = {" + -

    Food for Dummies

    - Here is a guide on basic food recipes and also how to not poison your customers accidentally. + + + -

    Burger:

    - Put 1 meat and 1 flour into the microwave and turn it on. Then wait. + -

    Bread:

    - Put 3 flour into the microwave and then wait. - -

    Waffles:

    - Add 2 flour and 2 egg to the microwave and then wait. - -

    Popcorn:

    - Add 1 corn to the microwave and wait. - -

    Meat Steak:

    - Put 1 meat, 1 unit of salt and 1 unit of pepper into the microwave and wait. - -

    Meat Pie:

    - Put 1 meat and 2 flour into the microwave and wait. - -

    Boiled Spagetti:

    - Put 1 spagetti and 5 units of water into the microwave and wait. - -

    Donuts:

    - Add 1 egg and 1 flour to the microwave and wait. - -

    Fries:

    - Add one potato to the processor and wait. - - - - "} /obj/item/weapon/book/manual/barman_recipes @@ -944,7 +692,7 @@ ol {margin: 5px; padding: 0px 15px;}

    Detective Work

    -Between your bouts of self naration, and drinking whiskey on the rocks, you might get a case or two to solve.
    +Between your bouts of self-narration, and drinking whiskey on the rocks, you might get a case or two to solve.
    To have the best chance to solve your case, follow these directions:

      @@ -955,7 +703,7 @@ To have the best chance to solve your case, follow these directions:
    1. Using your forensic scanning computer, scan your Scanner to upload all of your evidence into the database.
    2. Browse through the resulting dossiers, looking for the one that either has the most complete set of prints, or the most suspicious items handled.
    3. If you have 80% or more of the print (The print is displayed) go to step 10, otherwise continue to step 8.
    4. -
    5. Look for clues from the suit fibers you found on your perp, and go about looking for more evidence with this new information, scanning as you go.
    6. +
    7. Look for clues from the suit fibres you found on your perp, and go about looking for more evidence with this new information, scanning as you go.
    8. Try to get a fingerprint card of your perp, as if used in the computer, the prints will be completed on their dossier.
    9. Assuming you have enough of a print to see it, grab the biggest complete piece of the print and search the security records for it.
    10. Since you now have both your dossier and the name of the person, print both out as evidence, and get security to nab your baddie.
    11. From 52f1ce8afabe79a8d73b1a1f7c361db64862f1fb Mon Sep 17 00:00:00 2001 From: cib Date: Tue, 28 Feb 2012 19:58:30 -0800 Subject: [PATCH 05/12] Bugfix to preconfigured skillsets. --- code/modules/mob/new_player/preferences.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/new_player/preferences.dm b/code/modules/mob/new_player/preferences.dm index 2505bee7dbe..98e5b073822 100644 --- a/code/modules/mob/new_player/preferences.dm +++ b/code/modules/mob/new_player/preferences.dm @@ -514,8 +514,8 @@ datum/preferences if(!selected) return ZeroSkills(1) - skills = SKILL_PRE[selected] - ZeroSkills() + for(var/V in SKILL_PRE[selected]) + skills[V] = SKILL_PRE[selected][V] used_skillpoints = 0 for(var/V in skills) used_skillpoints += skills[V] From 82ff49345509f28bc5815e4f8e2fef7593454403 Mon Sep 17 00:00:00 2001 From: Ren Erthilo Date: Tue, 28 Feb 2012 20:04:24 +0000 Subject: [PATCH 06/12] Added correct colour uniform icons for Med/Sci jobs. Added Virology jumpsuit to wardrobe. --- code/defines/obj/clothing/jumpsuit.dm | 11 ++++++++++- code/game/objects/closets/wardrobe.dm | 6 +++--- icons/mob/uniform.dmi | Bin 162793 -> 166198 bytes icons/obj/clothing/uniforms.dmi | Bin 33986 -> 34448 bytes 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/code/defines/obj/clothing/jumpsuit.dm b/code/defines/obj/clothing/jumpsuit.dm index 960e194248c..c260df17670 100644 --- a/code/defines/obj/clothing/jumpsuit.dm +++ b/code/defines/obj/clothing/jumpsuit.dm @@ -183,7 +183,16 @@ name = "Chemist Jumpsuit" icon_state = "genetics" item_state = "w_suit" - color = "geneticswhite" + color = "chemistrywhite" + permeability_coefficient = 0.50 + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) + +/obj/item/clothing/under/rank/virologist + desc = "Made of a special fiber that gives special protection against biohazards. Has a virologist rank stripe on it." + name = "Virology Jumpsuit" + icon_state = "virology" + item_state = "w_suit" + color = "virologywhite" permeability_coefficient = 0.50 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) diff --git a/code/game/objects/closets/wardrobe.dm b/code/game/objects/closets/wardrobe.dm index 8f6776402c8..fc702dd65cb 100644 --- a/code/game/objects/closets/wardrobe.dm +++ b/code/game/objects/closets/wardrobe.dm @@ -339,9 +339,9 @@ obj/structure/closet/wardrobe/hop/New() new /obj/item/clothing/suit/storage/labcoat/virologist(src) new /obj/item/clothing/suit/storage/labcoat/virologist(src) new /obj/item/clothing/suit/storage/labcoat/virologist(src) - new /obj/item/clothing/under/rank/medical(src) - new /obj/item/clothing/under/rank/medical(src) - new /obj/item/clothing/under/rank/medical(src) + new /obj/item/clothing/under/rank/virologist(src) + new /obj/item/clothing/under/rank/virologist(src) + new /obj/item/clothing/under/rank/virologist(src) new /obj/item/clothing/shoes/white(src) new /obj/item/clothing/shoes/white(src) new /obj/item/clothing/shoes/white(src) \ No newline at end of file diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi index 50165c1498a7ab42064b6ea76ca11fff66cec811..04c8cff10cfa3a413372fac000188aca9cb62e13 100644 GIT binary patch delta 7379 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 C4oh(W delta 3948 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 D$Pcm% diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index 4f5d63f107ed0efac9bf817cf20796fcf7e8bac1..e54fc76e6b8803f9a8869555f4a6fbaa695eecef 100644 GIT binary patch literal 34448 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

      E6H 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

      N*RIUskU;}vL*%gPk#`76Vdv~~mczv+Z6h#i zp`30Fldthyj%MQ>ngCss_xz@6YH?yR!h757b18 z90CU`h0g+y&`2a0_*=LERH(%aoD8NN`4K#;@Hb@h{Hv4?q)o<1zN;Cbr_^8d8#`BP z4@>AFrkkg~`(-AeSXo*5hMRbL3V!kCZhFc3>Q-*6x5EA0cfnJa^TN~6$dzcW zbcB%5t3l%pqZXgIq$F9OZ8dES6$AQ?%z!xwEZm2*;=i4s2>r#IHpp(N>(5d7;T4nk zpid2DP-yF1TUM@$%2ONLoc7JNxY*&tt1K0WrmTFwk%Mv0s~Jc<@jE_S$4khpzWVUU zD$A7rls{DHcH;L^kk8BOKghRl+I(+;us(1ro7t0pZsVK9+J$xBFz?#BE+4t#xX>_eg}i#cnNP^X zTxufjkS8joXxTl(aMvhnBjL_}WaHX&{8K*5=}fdo@Qt4Rt*q+5W!t9h0!xQ^jV~AW zw=74jt6C*G^nvmETz#RP9;~|H4FaGS0J(42uTsW4Y3ap^A37(ju%G3#=?uoLqJm># z*8Uh4n-44rNa44Nv9Ht-cHO`UU@800!(o*B_^OgNmMqyeXxCXdK&x_!5icg%fvjO} zPLF|sp~h2JSC`K4iiy+lD{TMgP_MP4*p<3=m7W*UCAYI?e+NST*I%~Ou&Pnj3keL} zDcHsSd@soE|ESe2)yr=}zBMf!mRR1*$*P23m6zfFJ}pPCo3Vpw;{>Nj^Szg*7p5Mg zxh7->2r1-aYF1=$KN}Ol14$XPIWx zk~<6<00Ib7($X$3zXgYc_=Hy)6-xb-oxAT=EnNXi>(5)M4Szd3J9d!4`tc(K$X)=& zJ-Fxg=i--Hjq#K9KMCtfPI(HEpbyN&yM^KlRYP8e>PW=-zWL-&&8M$Ee$gz}ss!37 z_&cBnW*$HjOMmLBtX%?mEy10%RPxhO+e6z^(+eJ9CKu&EOIa+a*74x$B`n`AFR(UC z(@tqx9v!Qzq2WYdWKQcboA>e*9C*SJL+4q*lSO|aBxENz>>gmN-HVAQ@Dnbhr#B}e zb^tkgG!MNy&5Gw~%KR9yKhUO@0GWk%YuF>j9r8B@%UCnb(!p|dRka&lFr%tJdwl~Z zT4m?)qbrImxGlH)TJvdZjgoj8=~6iX)B1QeuXP0}d+_$=>OJMkhiE?RZ1CHFw`SIa zVg6h`LwIsSV95C8S9DbsmHg~%l%p8Q$(v%UHX3&rG9(16^wA&Sesm~h4<}d4R0BAO z)sk8{TRmWNES_Fij7M5(Ge01kAGRIG*S6p%n}0H7J01yi4PlOpK3eHU?*)abTfVQB z!0-bLRx-n3$*@<`l&=5p&JobM(NmqE&6dMH-@Q;47N~mlt-Y^WI4{o_L$N0@TifazIW@i-JqtVEK-ToQfm)C;qS=*y5#hCYDM{KV3%{ip}0c5`PEy~`^PPYub*jf|;wd0sQ zb&nIOQKi}E4K;twa*kjyGSbtZsbmPh4Vf}tVPuXrn(rawc6GZ&!bQoA_Tt*jd-BEW z$Z=608?0SENrjc7i<1V{b02}M8J3Ong6&0N7 zyX^M=Xp}7n&K6EE$t-(O%C#0l5flJIE$JP#XoyXoQl%YY5RW$4yAGA}5#_R0Ku$_#6zabu@*ZAS}S z$;mDKa?M!MY761*%B$+|e4m<4E?qlgsqGAqKd=*RNlr zg4d7Jp#IBp+Y#Tfkoce71XAu)A@F>3-u7rmf7JY;lFrim>(@I?O&OpaDzB`Z2eS8r z+)YtH83_2&BA$B`(a{6@opa)MW?fFGnF4l68DGAjfS-#FRzDz+YA<-NBShZCSKYU zbb@4y9H+j{&6%#Ryvh7FV@!riXYg2^&3TQl`)SLtA@A6mNWSUYTq%mvDt~gC%GP?L zzY+7O6^rk3uPXgX*wHCqEyG)COC{;ZPTX}SoW`~HsR{0*41Ycsm$vHqL4zJo? zsQ&fb#EOF5m0r-)95^*-uga;~$Cgd~L7wl=TfkXLxV3j>uA*f(rEWn;2Qa$!avnd0 z3V*w_w6q)m;%Y#&=+loMEWi}9v9<H+MH*d0At;5m~wpA0;6&2GcVTtmF2|2pI_Dbrw zlZ%UblrgSmw&kd9<=2^a$AKxn$KDFr=+@Jj&i)@Pz}#)yhnR-%O{n6oo%<~Hi^1@G z7jR-max&{MPzww=SZq3l=%h>usU_7m1%a5L@lao1y*1{ReGQq)Zl?_&3*(O}yd2yf z>lY-HlnOv2lAfMk?{3;&aNV;B1msqMYQ7G+1Rej&;O+;}R-QAcQ#z%t?9Q0ZiKTGS z^U_IDnRL|CHa~7E$MP-ylZNv#*d?9&EkI| z7I@5?e7whs@5^E|XvyV6JhYR#om1-aWgvBI4z+69@uBQW$!{(%URfZPPrt(E3K%UJ zYAi&3o2Pbio-IBYh_?>-EHH51NtIuEzAX;~U%)E|EDSz1EpekAz5Q|g^gk@~_Aq|` zAGeflf{OlTc^fYo*YBPi(Fk3rQYH|0Mhjyzp#dpeN#N%LJz5~kiA6vmiM+d20PC#p z#Q_M+jm*r19d~t6NO0va)c%D$lv^h&))Yivl@vSrG09P0qqiwks@2fiGW7n6db~)>L6FHKsgG12YSn><-HU(bsqKX z(I|EGw4z!4m{zKg6eX=Za*BL<@W$S#*mQ#6Uwjzc*!KebsAb8^DlH0lDF+2)1ZYcA0|y1@CKjz8B58ylBuYu0MTOCm3CBs z;`}pJsy_=f%z$UK*>u>NTUZzdw3&mjQ+N$bf3#`~mEiyQHoaT<%QjICttEhlYj-ek zmCH^I(U)|5chDq_W&mnNr8 zmN{H7Mjr@PCtv!U?{@y2sv)mSt$-tb=|jX29y!_B0V5;oz)VK1ae!wf8v!3x!L#Wb z0C)3ypL}=^%1@jXmdx#WiYh25P^&_9vYNCVqwqpyg-m-@rSjr%8j=F+o;S!(mE zMyC2`u*s<;PE1d0=<4=^#f^=feHCc^fdTCdpuIagJ8V>A!PUM@@S?@%A{_KgDK2VJ z$-TFZkkHSUbx=JJ1*RMO;CjfE8>DhF`C-3h-4k z{my6I=3S!kRR!KT;dHb#rG44NE~1|JH1}HJ#S)a#H9>i1X?WA(Kp^Qo<0AD?Tk6x3ptQI}BCU<~TWKzM_^6I?x{vCpGxe8Xl5KI9G>>SUfbPy-q3x~TV^Nm(Nv}V89g5#Umi9sWTd>3Q2a8R zTjGu*UC^P^u?_%mbU^_FSc}d054YtaUL1oz>O0*6bP?IF-;Q9scp+`h5BFPhp>+no z4v G~o_-f+iNCJru6I;qD#;^R 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 literal 33986 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

      8Z5b7QCW2I=1t|i^t!6O_S6^DH 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

      #anMvdkooFvPiNZf;10oRvv4^8%Q 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 From 02002054deff33c4df247a4a7d3933c253d5e6bb Mon Sep 17 00:00:00 2001 From: SkyMarshal Date: Tue, 28 Feb 2012 13:39:51 -0700 Subject: [PATCH 07/12] Teleporter has a cancel button. Improved the admin player panel. Disposals now work right with things thrown at them. Nuke upgraded to use realtime. --- code/WorkInProgress/Tastyfish/livestock.dm | 10 ++--- code/game/events/Events/PowerOffline.dm | 4 +- code/game/gamemodes/nuclear/nuclearbomb.dm | 35 +++++++++------ code/game/machinery/telecomms/broadcaster.dm | 8 ++-- code/game/machinery/teleporter.dm | 9 ++-- code/game/specops_shuttle.dm | 10 ++--- code/modules/admin/admin.dm | 45 +++++++++++++++++--- code/modules/admin/player_panel.dm | 38 ++++++++++------- code/modules/recycling/disposal.dm | 6 ++- 9 files changed, 112 insertions(+), 53 deletions(-) diff --git a/code/WorkInProgress/Tastyfish/livestock.dm b/code/WorkInProgress/Tastyfish/livestock.dm index f13e5b52918..a88c4f50e9d 100644 --- a/code/WorkInProgress/Tastyfish/livestock.dm +++ b/code/WorkInProgress/Tastyfish/livestock.dm @@ -103,7 +103,7 @@ // Cow /mob/living/simple_animal/livestock/cow - name = "cow" + name = "\improper Cow" icon_state = "cow" icon_living = "cow" icon_dead = "cow_d" @@ -137,7 +137,7 @@ // Chicken /mob/living/simple_animal/livestock/chicken - name = "chicken" + name = "\improper Chicken" icon_state = "chick" icon_living = "chick" icon_dead = "chick_d" @@ -163,7 +163,7 @@ desc = "Tasty!" /obj/structure/closet/critter - desc = "A critter crate." + desc = "\improper Critter crate." name = "Critter Crate" icon = 'storage.dmi' icon_state = "critter" @@ -172,7 +172,7 @@ icon_closed = "critter" /datum/supply_packs/chicken - name = "Chicken crate" + name = "\improper Chicken crate" contains = list("/mob/living/simple_animal/livestock/chicken", "/obj/item/weapon/reagent_containers/food/snacks/grown/corn") cost = 10 @@ -181,7 +181,7 @@ group = "Hydroponics" /datum/supply_packs/cow - name = "Cow crate" + name = "\improper Cow crate" contains = list("/mob/living/simple_animal/livestock/cow", "/obj/item/weapon/reagent_containers/food/snacks/grown/corn") cost = 50 diff --git a/code/game/events/Events/PowerOffline.dm b/code/game/events/Events/PowerOffline.dm index f71d9b4096e..92f4c9e643f 100644 --- a/code/game/events/Events/PowerOffline.dm +++ b/code/game/events/Events/PowerOffline.dm @@ -1,8 +1,10 @@ /datum/event/power_offline + var/list/protected_areas = list(/area/ai_monitored/storage/eva, /area/engine, /area/toxins/xenobiology, /area/turret_protected/ai) + Announce() for(var/obj/machinery/power/apc/a in world) if(!a.crit && a.z == 1) - if(istype(a.area, /area/engine) || istype(a.area, /area/toxins/xenobiology) || istype(a.area, /area/turret_protected/ai)) + if(a.area in protected_areas) continue a.eventoff = 1 a.update() diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 26139859a8a..dcc30eceecc 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -6,7 +6,8 @@ density = 1 var/deployable = 0.0 var/extended = 0.0 - var/timeleft = 60.0 + var/timeleft = 1200 + var/time_actual = 0 var/timing = 0.0 var/r_code = "ADMIN" var/code = "" @@ -22,8 +23,7 @@ /obj/machinery/nuclearbomb/process() if (src.timing) - src.timeleft-- - if (src.timeleft <= 0) + if((time_actual <= world.timeofday) && ((world.timeofday + (time_actual - world.timeofday)) <= 864000) ) explode() for(var/mob/M in viewers(1, src)) if ((M.client && M.machine == src)) @@ -35,18 +35,23 @@ /obj/machinery/nuclearbomb/attack_hand(mob/user as mob) if (src.extended) + var/time_left = time2text(time_actual-world.timeofday, "mm:ss") + if(world.timeofday + (time_actual - world.timeofday) >= 864000) + time_left = time2text(time_actual-(864000 - world.timeofday), "mm:ss") + if(!timing) + time_left = time2text(timeleft, "mm:ss") user.machine = src var/dat = text("Nuclear Fission Explosive
      \nAuth. Disk: []


      ", src, (src.auth ? "++++++++++" : "----------")) if (src.auth) if (src.yes_code) - dat += text("\nStatus: []-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.timing ? "Func/Set" : "Functional"), (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src, src, src, src.timeleft, src, src, (src.safety ? "On" : "Off"), src, (src.anchored ? "Engaged" : "Off"), src) + dat += text("\nStatus: []-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: --- [] +++
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.timing ? "Func/Set" : "Functional"), (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), src, src, src, src, time_left, src, src, src, (src.safety ? "On" : "Off"), src, (src.anchored ? "Engaged" : "Off"), src) else - dat += text("\nStatus: Auth. S2-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \n[] Safety: Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src.timeleft, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) + dat += text("\nStatus: Auth. S2-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \n[] Safety: Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), time_left, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) else if (src.timing) - dat += text("\nStatus: Set-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src.timeleft, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) + dat += text("\nStatus: Set-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), time_left, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) else - dat += text("\nStatus: Auth. S1-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src.timeleft, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) + dat += text("\nStatus: Auth. S1-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), time_left, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) var/message = "AUTH" if (src.auth) message = text("[]", src.code) @@ -111,17 +116,22 @@ if (src.yes_code) if (href_list["time"]) var/time = text2num(href_list["time"]) - src.timeleft += time - src.timeleft = min(max(round(src.timeleft), 5), 600) + timeleft = min(max(time + (timeleft/10), 120), 900) * 10 if (href_list["timer"]) - if (src.timing == -1.0) + if (timing == -1.0) return - src.timing = !( src.timing ) - if (src.timing) + timing = !( timing ) + if (timing) + time_actual = world.timeofday + timeleft + if(time_actual >= 864000) + time_actual -= 864000 src.icon_state = "nuclearbomb2" if(!src.safety) bomb_set = 1//There can still be issues with this reseting when there are multiple bombs. Not a big deal tho for Nuke/N else + timeleft = time_actual - world.timeofday + if(timeleft < 0) + timeleft += 864000 src.icon_state = "nuclearbomb1" bomb_set = 0 if (href_list["safety"]) @@ -153,6 +163,7 @@ /obj/machinery/nuclearbomb/proc/explode() if (src.safety) src.timing = 0 + timeleft = 0 return src.timing = -1.0 src.yes_code = 0 diff --git a/code/game/machinery/telecomms/broadcaster.dm b/code/game/machinery/telecomms/broadcaster.dm index 31753036f56..c3ac2943d8c 100644 --- a/code/game/machinery/telecomms/broadcaster.dm +++ b/code/game/machinery/telecomms/broadcaster.dm @@ -394,7 +394,7 @@ var var/J = job var/rendered = "[part_a][N][part_b][quotedmsg][part_c]" for (var/mob/R in heard_masked) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][N] ([J]) [part_b][quotedmsg][part_c]", 2) else R.show_message(rendered, 2) @@ -405,7 +405,7 @@ var var/rendered = "[part_a][M.real_name][part_b][quotedmsg][part_c]" for (var/mob/R in heard_normal) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][realname] ([job]) [part_b][quotedmsg][part_c]", 2) else R.show_message(rendered, 2) @@ -419,7 +419,7 @@ var rendered = "[part_a][vname][part_b][M.voice_message][part_c]" for (var/mob/R in heard_voice) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][vname] ([job]) [part_b][vmessage]][part_c]", 2) else R.show_message(rendered, 2) @@ -435,7 +435,7 @@ var var/rendered = "[part_a][vname][part_b][quotedmsg][part_c]" for (var/mob/R in heard_garbled) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][vname][part_b][quotedmsg][part_c]", 2) else R.show_message(rendered, 2) diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index 8e33bebe72e..22bac2a5936 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -83,10 +83,11 @@ areaindex[tmpname] = 1 L[tmpname] = I - var/desc = input("Please select a location to lock in.", "Locking Computer") in L - src.locked = L[desc] - for(var/mob/O in hearers(src, null)) - O.show_message("\blue Locked In", 2) + var/desc = input("Please select a location to lock in.", "Locking Computer") in L|null + if(desc) + src.locked = L[desc] + for(var/mob/O in hearers(src, null)) + O.show_message("\blue Locked In", 2) src.add_fingerprint(usr) return diff --git a/code/game/specops_shuttle.dm b/code/game/specops_shuttle.dm index 18838470a1a..b2d73d36ac4 100644 --- a/code/game/specops_shuttle.dm +++ b/code/game/specops_shuttle.dm @@ -232,7 +232,7 @@ var/specops_shuttle_timeleft = 0 if(specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return 0 for(var/obj/machinery/computer/specops_shuttle/S in world) - if(world.time <= S.specops_shuttle_timereset) + if(world.timeofday <= S.specops_shuttle_timereset) return 0 return 1 @@ -286,10 +286,10 @@ var/specops_shuttle_timeleft = 0 if (!specops_can_move()) usr << "\blue Central Command will not allow the Special Operations shuttle to return yet." - if(world.time <= specops_shuttle_timereset) - if (((world.time - specops_shuttle_timereset)/10) > 60) - usr << "\blue [-((world.time - specops_shuttle_timereset)/10)/60] minutes remain!" - usr << "\blue [-(world.time - specops_shuttle_timereset)/10] seconds remain!" + if(world.timeofday <= specops_shuttle_timereset) + if (((world.timeofday - specops_shuttle_timereset)/10) > 60) + usr << "\blue [-((world.timeofday - specops_shuttle_timereset)/10)/60] minutes remain!" + usr << "\blue [-(world.timeofday - specops_shuttle_timereset)/10] seconds remain!" return usr << "\blue The Special Operations shuttle will arrive at Central Command in [(SPECOPS_MOVETIME/10)] seconds." diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 4cb7a48f3ea..8ba9a6c4bcf 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -258,11 +258,16 @@ if ((M.client && M.client.holder && (M.client.holder.level >= src.level))) alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null) return - M << "\red You have been kicked from the server" - log_admin("[key_name(usr)] booted [key_name(M)].") - message_admins("\blue [key_name_admin(usr)] booted [key_name_admin(M)].", 1) - //M.client = null - del(M.client) + switch(alert("Are you sure?", ,"Yes", "NO, WAIT.. DAMMIT! NOT THAT BUTTON!")) + if("Yes") + if(ismob(M)) + M << "\red You have been kicked from the server" + log_admin("[key_name(usr)] booted [key_name(M)].") + message_admins("\blue [key_name_admin(usr)] booted [key_name_admin(M)].", 1) + //M.client = null + del(M.client) + else + src << "Looks like someone already beat you." if (href_list["removejobban"]) if ((src.rank in list("Game Admin", "Game Master" ))) @@ -1759,6 +1764,36 @@ C.files.RefreshResearch() owner:rnd_check_designs() + #define AUTOBANTIME 10 + if(href_list["warn"]) + var/mob/M = locate(href_list["warn"]) + if (ismob(M)) + var/client/user + if(istype(usr, /client)) + user = usr + else if(istype(usr, /mob)) + user = usr.client + + if(!user.holder) + src << "Only administrators may use this command." + return + if(M.client && M.client.holder && (M.client.holder.level >= user.holder.level)) + alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null) + return + if(!M.client.warned) + M << "\red You have been warned by an administrator. This is the only warning you will recieve." + M.client.warned = 1 + message_admins("\blue [user.ckey] warned [M.ckey].") + else + AddBan(M.ckey, M.computer_id, "Autobanning due to previous warn", user.ckey, 1, AUTOBANTIME) + M << "\redYou have been autobanned by [user.ckey]. This is what we in the biz like to call a \"second warning\"." + M << "\red This is a temporary ban; it will automatically be removed in [AUTOBANTIME] minutes." + log_admin("[user.ckey] warned [M.ckey], resulting in a [AUTOBANTIME] minute autoban.") + ban_unban_log_save("[user.ckey] warned [M.ckey], resulting in a [AUTOBANTIME] minute autoban.") + message_admins("\blue [user.ckey] warned [M.ckey], resulting in a [AUTOBANTIME] minute autoban.") + feedback_inc("ban_warn",1) + + del(M.client) ///////////////////////////////////////////////////////////////////////////////////////////////Panels diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index c317f9f7073..3ccc5ff58b1 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -11,6 +11,7 @@ for(var/mob/M in mobs) if(M.ckey) var/color = "#e6e6e6" + i++ if(i%2 == 0) color = "#f2f2f2" var/real = (M.real_name == M.original_name ? M.real_name : "[M.original_name] (as [M.real_name])") @@ -19,26 +20,32 @@ dat += "[M.name] \[[real]\]
      [M.client ? M.client : "No client ([client_key])"] at ([T.x], [T.y], [T.z])" // Adds current name if(isobserver(M)) dat += "Ghost" - if(isalien(M)) + else if(isalien(M)) dat += "Alien" - if(islarva(M)) + else if(islarva(M)) dat += "Alien larva" - if(ishuman(M)) + else if(istajaran(M)) + dat += "Tajaran" + else if(ishuman(M)) dat += "[M.job]" - if(ismetroid(M)) + else if(ismetroid(M)) dat += "Metroid" - if(ismonkey(M)) + else if(ismonkey(M)) dat += "Monkey" - if(isAI(M)) + else if(isAI(M)) dat += "AI" - if(ispAI(M)) + else if(ispAI(M)) dat += "pAI" - if(isrobot(M)) + else if(isrobot(M)) dat += "Cyborg" - if(isanimal(M)) + else if(isanimal(M)) dat += "Animal" - if(iscorgi(M)) + else if(iscorgi(M)) dat += "Corgi" + else if(istype(M,/mob/new_player)) + dat += "New Player" + else + dat += "ERROR" if(M.mind && M.mind.assigned_role && istype(M, /mob/living/carbon/human)) // Adds a column to Player Panel that shows their current job. var/mob/living/carbon/human/H = M @@ -81,13 +88,14 @@ "} dat += {"[player_has_info(M.ckey) ? "Info" : "N/A"] - Boot | Ban | Jobban -
      [muting]
      - PP | + PM | + PP | VV | SM | JMP | - CA + CA +
      [muting]
      + Warn | Boot | Ban | Jobban "} switch(is_special_character(M)) @@ -100,7 +108,7 @@ dat += "" - usr << browse(dat, "window=players;size=905x480") + usr << browse(dat, "window=players;size=905x600") //The old one /obj/admins/proc/player_panel_old() diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index aaa19ce3694..cf605048c7e 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -439,8 +439,10 @@ del(H) CanPass(atom/movable/mover, turf/target, height=0, air_group=0) - if (istype(mover,/obj/item) && !istype(mover,/obj/item/weapon/dummy)) + if (istype(mover,/obj/item)) var/obj/item/I = mover + if(!mover.throwing) + return ..() if(prob(75)) I.loc = src for(var/mob/M in viewers(src)) @@ -450,7 +452,7 @@ M.show_message("\the [I] bounces off of \the [src]'s rim!", 3) return 0 else - return ..(mover, target, height, air_group) + return ..() //The toilet does not need to pressurized but can only handle small items. //You can also choke people by dunking them into the toilet. From b7f2e158e268279ff173f2338e4909b2d1066b18 Mon Sep 17 00:00:00 2001 From: Hawk-v3 Date: Tue, 28 Feb 2012 20:34:46 +0000 Subject: [PATCH 08/12] Iconchanges for upcoming patch, changes to keep the icons in line with what exists. --- code/modules/chemical/Chemistry-Tools.dm | 4 ++-- icons/obj/gun.dmi | Bin 37807 -> 39707 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/chemical/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm index 568f291e2d2..87230391edb 100644 --- a/code/modules/chemical/Chemistry-Tools.dm +++ b/code/modules/chemical/Chemistry-Tools.dm @@ -557,8 +557,8 @@ /obj/item/weapon/gun/rapidsyringe name = "rapid syringe gun" icon = 'gun.dmi' - icon_state = "syringegun" - item_state = "syringegun" + icon_state = "rapidsyringegun" + item_state = "rapidsyringegun" w_class = 3.0 throw_speed = 4 throw_range = 10 diff --git a/icons/obj/gun.dmi b/icons/obj/gun.dmi index 1371eb3bb06c2cf9a8502a84a2f0118cedc80053..2a4d79e7205d8fcce3b0609af78d6d10d471b944 100644 GIT binary patch literal 39707 zcmce-byQUU_bz^hMp`MQ5$TeaR!Rg3DQQqbq`P5g1nH6%5D6)1B!-ZZZjl&5x*3{b z<{sYf&-dQnZ+(CFkGs}gKNm3Lz|1+Xb6)$|&wlo^KWL~a5#4!k2LJ#f<>&IR004vW z_8Siee5K{XI4uBRN%&~Lc9XYsed}W5Ky z5*>)G;-W3){FQO55qsr{Lq7|3>Kb)g$dQLxix57p(BF?e?EKX6|LaGhy?JdN z?hQTGoSH#Y9XEudHoG>NRk_UaLq{{MH3HkY2HRN%KeJr#k#c~!Z>rLwxbNdr|Z!8LUiT2A%T z?stZ#f2cjpjBU7kJSokcbw7(Di)^u(@07?h`?Za(d-n%pw_dDOBCS7<2S%PveH^yn zE!&Pt(h#0_zy5q~vEos5HG8y2+}|IcXP#=G+8N>UvB!+F$Ix?^14_S&2BMa#g+7d1 zl=eTm!nP2~hYBf?$6rT=D>Ss$>=bxJo>Q`mInl;av*I2C5rj!8Ojm+|o01FmW9%{2 zzK=}OMqXgX^0QHkwP$@?0$f*uG5wA(9_()do1vK@pAdX;t3^YsM04tTjGX)5sa2C2cT;-)aOlKV^!xdT{&S`~%6?x@P-F@6t8kWJ z^3yS?*myYeZvL{MK3s$22P?H14NO?>6v)pK!chUI>p1` zbh8ZlVXFT*Q;+fqJwrJ`W=FzBQ!${`vF%;U=GoYF79GzYlL$Tr*sKY)k zW|G)y1S(`xoN8}omjJnG;wCyjIAe{b%=MZJ67UDQ@*u;jdHCQr+3>1N$%^OM^CRRN68${{CzjktYJW^!lCnoyhTi2TfCT^ zw}Jq#m>oMo&gkhS6K_Scim|)YYpU+b;Lor16|{-<7AP!JCNVX6DJ0t|#zX35g{-Zy?X)<;lN%{75)fphPm5BSpjg>`yp09{3qF<;Kma z3eRc215Ei=L%A}hgSj%WA;&U5>D)kZ8Q7x=EVi?uIb5j1b3uMOy~i#b|?gZehI|_+H1Ea9<2+a-TEDe=%T-VKsFP^xBL)I{9*z? zpSZ3st)-dv2#!eJ8|N18tKQ|v8MJbZ;DK=uJWGe=6+DaFJUJaUbQHd1X*likAfNuh zz*~GwckXZ8WzQ4uyT}N%=gCFPHxNzuwYe4nP@QkObyw@_eCRwG)c2{4*0Vph&z=A! z>FBPQeNo4{8B>|>OnPg3m47)W`}ADVwlSVZM^{lqiQ^0wdw=Ra30f0V@|kd}^)g#5 zcZR)gauhX*y~aRlmGx_k!a>c5!_g&nZ!E;yo7xX` zIiyw~^x;~9v^E+26OLlV_=P(;lIyZj;wL;4*qJTusWaf1{7td#!F6tfSybfd&WvwV z{6qrxz#H&z(&vz+7r+7_j~Qv-81wFe0F#tQIr1)sCb06LM@a-3CaRhSd~S;Q{RL>U zo#u8vM_y7(`+1E{&1E{aaY!Q%<;qN9ZN@34y1J|kJH3-ZYyhdjz8qX5AKhh2uYM!}Gi!+P3~;EBKzCZ;!#AQSBeY&U%ROjC8Ep7E zx|Snuc%pSL_ZHB@(mUL=T->4Yerz=0TE#9_<8s#bQrR6*NqoOQQq@dkepG+)qVvN& zwofBSwX{m`fTVAGKH?XvN1O|FcXtEO)rwBtv$=dy@gLQWaA|;4B=hAlhwOfaunHla2w}75LC^j|bEe&eakGbTddZNLoSj|S z$lKN4II6T5>L3`mAuFWal)+n`y{o+c*RQ)JB_#lKa#H)#kX7zl)obp6+#*%30hhk0 z_@mX{=+IECk8~20a}AEY;X3=hxsUmJ-&_V!MqI05^u*Hb2*UQ}8Xi7;D2L@k`aUan z_R#C(WiXb(UdH>FL{Cuub2Ld zROLgju@*OUIh@LLxmH$JAwt`sJ~L(dIZazcIFnOT9q)wlD~A1p%d4tLS(8d;p@08c z7&&)Sc-@@NIG@d0KWxft;vQYWgcdEuTQ>DKmX&d{cYkOY98?|5dU6lEj`5cIuM8Bd zhO=hZ-&i0oj@~>kXl?jh%)Yd7zBf0s5um1~rjZ+vKH|r73=g=r*VNE}F1Gr2)kd?%ybH%}uAT@m6G-06Sz#iSN zRkV^?0)j;N<@>$BMYSxkAclYo2;2|xaw1_h=rEjQH52YXV?8Yu!_Y~*XZ$Ul@meN!{**F*9^2oHS? zM*{$O=2(C_*YlA>&a%1jwgK;C6yu#jyd$gcub2G)e3ioPD^so>b(f)9_~G6K#*hEv z$v2ve_>6n^$sljN#9Ull_<7l=WQ@GStc^@eOk{IqE;)EY*NAl zBeRLoTn7^lHv{OD=#KOEY4GVA^`l#ybU_?v7+rnJOpEvwE_!pXH||;rkG6lLS5RGQ zssepJXx)~232iomZRSTWxru9=YRc*&Pm{~DP*Ox858(O`=r`<=cFBzdae2A@QIkk!`P9y&E8>`xhGuS8t>16mHvK?- zmCyN=^i%1Jr4Wq6K+;ryv8aTB)Vo}1T zD@)3rMpX)tE`XT#c*E@AnoGw!C%vZ1GDEfnVcS$M%LQ?Kr}IqBa5mLXqi^D}rWcX_ z1T|)1%cacC$;90y>E~ZgwpO3uv7GLHQ1{%$n|&Gyu8tYrjLpK$O?Z8NaQ@Ntkyrw( zzFiAiTXzBY5s)6NblHihpu|7o2$BS1aL9V>&(H1(2%&i6>IE`~UbVwR|6FK)lxg)j z?M!&61OPX0?WwaiO@`5^ag;9Uk~WMqP_L5~wL5wFwc`WxCi9o0BK5Fgs~|yfY{ihg zZc+5v8)-z{pd()$$+JQ00Ht+Nhnwfh${nbiYyUeJ5|l6Rffs@0^u6a1kf_C~ukO?M+>P+oWg#&W+A4Y7t2JX1$%I#zN!gyG^1-&cr24{%fs1Jw2US zP*BUo^ADy^cf{pi9D~pcU&PETH?ZW{lybV)7eazauhb1F&a%N}TK8P=JD4WvCXqod zH2_U+`-S$XJ05{NR2}rYa}seq*nPv<5)vohez#)Zymec|R$5iJ05mMzg}jIBHty$< zeL{j)GhH5r$JP^H@HGe2ft@GxHsz zQGeOsypw+RYH@8ojFuXGKad8y^U~=;*>U{~Nj1LV9S)lxJ(ZWAeB%C_gBpBG{<_=d zKTntgK}ttPmazSQ^}+8BseWqM@k~PA&`|EBu|#fUJM!{h9)$=n4pbjXU$EmwaY5WLNr@QimqqfI`3PleS(skn$wMM- zsbL)>Pwm!zrSR}R_dO0YsQNrbL1Y%co)_j>eI0tS#~;sbu_b$<7ocGG~@4!p@2Uyi1!aXldz0Eq#2 zfFPtcV~+NK8Ry;A1L1m)y+5pRYwPP6z@KBq$=PF9*Io!f?_aB)WK;QLo3rHTgf1n} z{Mf)RSEi`n#qH#(xB2+cA4QvM38>kV)YZd0>(8BDyqGwT7PLW6h@(~K&{8~%6JK8< zngP?=`p{1G9YmvZ09!f8P=VLwx<7k+uRq%A1qgc6rJz-z-g$itGd*P!Jn&4LC0Vmx zYhb=x$%y>02<;b+2HCyWI0xXg*CYpZji}8q)z>E*brI=@?F#r=e_y)WND$l8X8XDl zb;I}G^{dP+lf}o!&(UQsq_6?2Cm!ia=WjZemXDxIGDPk@$R=MCmpJ6%ch&*tm7n;q zau2!$IDDQVVy!zMt>7U-aNl%)_|yca-TH~PF%k4Ri;|2&ccOr@|8|Je1 zLcIcJIr`?NHDcuCMtuhVb z2%!}Y<{oZuh|Uj7ILW4e7r7j=5KTKMKikNCEcQdfuKvx)+c36o8AD~|=Xnh+M>X>4v4tFo|0DE%U%Y}wdo!{zZA~xxo=lmloVS7vbxX5?zIUdb)H`nJN zrh!4EmUJ6L!2UYf!PjKD2x5*n+^W7Ht>Xux-TW}y4KA=QmpAxhMovWq0m2Ezalzwi z=;{VnS9elw>>2yj)=gNeTy`9rEXt-?PqXNMIpt?Ar>QDGnPZ~W}}xg>f3 zi)#X=f#1^J0(K%ayB-pE2nd`n4wrRDFdIZ=;9Rg=oXfxfv_Bzs6;*rE;DO8K!QzE< zGM&>ek5hy%WlLPzItF4ID7+E+jS_8(%X1BCwS}??zebxO{O`nT7ASfvf~mlZ_!-K` zbHN>tgd}3Yf#m9JHBRQt7qAGJ89HBIIN}hgk0`1wk%{k3k}^I{dJjI~pW5josMqU)s{W`2=@I%v754c{j+@UToD*&vB_X77obV@5$8N`N^iP6>9)RXsdmW5 z0v5aOv8oz3-rlcs)`pzH?ku8AkGsq+Q=9F z0A7;k(RRG`cIc>vi5oxul?wk0Jt*@x%;8OPYNBvTG$KL-j=>?U(~QhqWwhs=;YAl? zzmnOT4jdW7BHSrj*a;lbBrw@6THYDCfeq}U0}N$}>BPTWK_V^(9Y2h7Ix+9=D?;hrDj+K6lqx#7bU{?N^@?39RYafveA*GE9R%0>9_>R0eXMqbsV>*W`?k z9(8!u5-1AddoyM($DQHI{L)g?6K8{md+>BJ>P0@g~WaJ-Wddc$%+@9X3+IDbt z@RahoH>pu&#N_&Pz*3XtKU-Pw3EY)}P}6#h!cZ1iyYg*Vm-gq+y&SYgr6-PHgo-~Z zgoWwKtbBEsCL2qSy_J*5O4MeqSmeQfdENhAl=}Zvs{T)2v>x?=h<}@bBa58ysY**r z`2&Zgo}yW<5qxFjy5A`7VxdkB1yElkz&uaYZzp2gN|^nNCewtflZla$(Fh~f2lsBZ z2$ocCu%UyZzB0%A_wSjuSmYJu83hC|&fyK8y1^y5d)q;5e%g3;ntQfWTZKCP&^RdT za$^F3M3xTxc1Sz%=RYI%?p+tm*~Ez^BoPy_8QTV8JGA`NF&Sm|$m-NmEtmb_b|RjA z5!fI#fO!j=&iTD!xP}V7($s`}n~Eyk<^&_F!$3F4M>&{9x$0rnN*8gvRZU)L^-2~1?e~(XhF*EWG5Igw!w9G_@b;IAXvGYh?Ij11!)fZ<+lN~G26~x6e+R0$ z16)^6N#mD_YaR}g#y;@nv6~iPd2}kTYRA33vjc(1x^%2z7@hKN65ie3F&f=+<4^wx zxRGKMyH4j-S7Q+S(!Jjm9+e|08o+N=BWYEO=w}D*dFOl0_QU^RaFE^ol zW@a#Vg{}6wjFlTQGq1jJMjIDs8W=?V{{5Qv>e71i6z3DO>gfFwr>U7PD=sB-O)?gU z{4pNBf((j7mF1&%oGNB|5zxjh!iDJ)A{Zbg+3k zBMy654?8aL0x1tW7gtwb!owr5T=bfD-)j-3{$a&;Hca>D?^#3Ke5ew=H`YKZkL}Uf zxC&o)XBfeEFdM0U;)eiEpk$*Gv@Rn`-ss3DG~(DoYp}-Ekk`kySNj_J5lnNS64c%- zVBF}$L_81;0d9syyuz>jE~s$`siC;^UhRUd`PJ2Tf%x?F`;(dRFr>4gONNCniDTxZ zXfb&GyN}lfoV!yBNNK1DLY~G&{dy4^cHdkml}Pn-#qr&T#eXV!%BkgGqtCbX zip#`eGfE9ua;9it%_7)1{$ji^JMEgC8p|Ck$*YTk*GK2pn1671%3;;5G+Msbq9(Di z!!i?RFf+u)VEXF0yBt# zV`F3Ur>ovY)D4l?0NCZT7`JlK%AaqQ4#yX$gEm{|@P|sVCryrZ22x!Nfk@|eN7?sl zT-beykKRI?U^g6sK1S1&2$ zySv}?OC_0k{vH!8mdYYz~6PxndGlU}#%T`RD~IR|3Xi~#%^z`LNw!UeCb z|Mgj(QXD-1O-?5NyS|>^*a(VCu-6I-*l*sv!T7Pa&@3uq_Zw=(}11lSmr_<;((0t6@&4Uh-4D6 z#peDzOz29Od`Nc1FI92hQ}{)cirEt%^6tXI=M1T#F-=NKWfckm0rXk1KD2zCo%{Z9 zSv&|HBQrAws6u)79`?#eW3_6=%@wKNyUWso8WBaJa5tm=Sran|C@SwgRgGGGgn?U4 z(YmeY@=G~bXwlin5e+)pwPH2DKT#tud(I!b@m6^f9sWJ*2l;x{ z+#WkO_s`|72*Vq!FCJ~SCsc}E#rT)MDg#h1#kgm!6WB~xrMBNR z4Bz(h$)JOO{*=#>^d7gqZ(?-HtVS!d+yoC?@)k4E4xO2U-rHyi&vLtDb*jRh4{h7Aemi=KP!H4Re}?S_HOD6z;L&c0SfMLN?y5xf0fRf%k3KXTLFMpMQLOTY) z&cSg+i*?hq|6_-go}RdQf&Ro^r6~AQ69c3oe$mS1yuDM|BAEEw*wC){7Om_kDWR+v4e zuNU#>j{!La`BUq7Gaeo#RXak!>}aL?lcaa`=+3FvPI-eQ!po!kj`oc1+nXJnO}D!r zd-%1rbpfZq+`eQ(RsvBY_AGgH|iUS679naxd+LdyG9XQ5h*=B#_-qQIfj4 zIsmF(BNH~EiTfM~C2(|b0wsYRK8M(l+9so#J-%22##1fNYtPf05$kKiyNreJ8&Ix1 zlx50O4mVSas22$IXr7$;_tzOWCkvXm-0QZP>O~ji4El72egF~n^VP2-*%gb=YxDtN zr(Vc^>;PnYz`pv!yw`Z;2txr!l#!-a8J@cNES!9v_;1v+a!lHP^ra_tDf_V2E2G=Nc0A-_uefY0}VrukhMSYUO|Cbobv&kem?HLpmlqj zE6%T9zpAVc9CjCAR3e7hR`cmh>x0b$u5AW8r(m_y>>|Ci@A?^O6Lk4!Jt;Gz8+U1g zliISeNu7aCdB@KYT#tEIgoshkhOB?<#LYFIINdQK&iiZgaYjFNfTloaSLb){0jo_S zFqwCfF;J0=jgAydFUx*fjGRXrJs*8qnPx^P_~sN{ZsWqKcz^$2Fcip*oSa&gQS|%) zc1y|vZ-i;3{iuDiA*ZLO#Z|MU6ck}Ub3TA*_xo%sAoRW})Fk5j@ue3chA1*B7RLzM zIvo_*=k)s*7wLV9Fp%nGITnL-l?Z7PuHx`buUt_<;SnRWd3`XL1%eX-5f&CMt|;x; zOu#&v$}##}LGRnf)6*seuSSrA%~Rkv#(1z9jQLYHF8DvQ|42)227CZWh25pNWx?+3 zbNBz_2P6+DUFA>ol^{i}GlxdH9 zr$w^as0#o6M@ZPmo#3mX>az@S_fqiS006G-g8X5}8v;B{wv($&G&%3`Gq4x4KGMXt zsZKott9k{B9M4HFCb|ZK13=baX(=r{!j3;VqXGrCcNWg4zK}BvEs)?4kmjrXjd@u~ zuuMuy3MJqVzyIBR@Y83wxm&|LA-?R(7`ni#fiAE?jFFH))`)KF=AkG2lO%J!xR&kRS9*Jc#;jYw6|M+8Q1KK}gp! z0F2lhRsl@g@>w2iv>v!0%@y&A2u_E^RjKyR1CJ>$DFjxPE0bJ-8usa9V6FO5mAkK%>m0_GFVksw@DVc>q>7ZaEQpfU< zk=pufHsrs&0FZ(XJm2zrQ&Ur3NXNLk3y(EEnNd~8yg?G7nu24@A@Hd6V#bIP_jKE# zyMX*=*oc2!%gxzbVuu-YU@f@A?42H)Hh4pAR8uXFGHEI!pjb-TbmrksS(2KBnRSH9 z%2G$?VA105FU1Hv=WR5Cep|%Oe)`Nmn?O99m^FzEO8g7}S)dpfmzmImWw$3};rwF8 zYPSs&wVB$c+B#$kWSwF5e5l0F+PLo+?!bYLwnOhQbRzj^HV&@xPxrv5j%NXM$eq9k zYg&i99++=lLd$iV<-D}D$-zqNk1z=(qx=If;*e(zFoj>(w`~W)>G3yWJKJMY9FQ@x z1x?G!AT^9mB6GaBSVfQ!aB`M9Az$0;7E5-hxHa8MK{FHENHE&B z4##q>S5qTCL@9@(!A$&E_&6plrt<;d3K`k6C2DBmEDv-=mZOoE2nFy8t&ilwS4!@u4PX~d zd@v2XnL@mVxA{W=5R<@y3*6CNU~`IAo9Vmnxx;s}4vgK!R*BDAaw@6ZM}#sbqjE2M zz&D+ik_#vq-TYZV=S%IkAk>mmQ#-fZ>TRXL)rtpcrbS@7;$qs)ADI42nO%?0dOQK( zSa^#+FfnE)K#;PK?S<2fecIB&H)&aAXX*Dlc9HzqB+Xs1$Y4oi-DmZr%RpZ<8QMDH z&*{X7ykBUQ1Ie-=k4u9}*z{%Vonz?YO9T<_*+c!pQ}weX`1}?6WI`Q)J`KU~roZ=0 zHqkF`72Is#7pQebyxUAR*3-jH8(2%PZ)>CXT=Xt-YBKWLtDC{##7Yi+b9uZLq#CQl z;7`t)gkM-#7|k;PNVR5>#|^OM74V0705kNg%~mO{|vOFi($2m}Gb ztY+3})ZILiiPa2ey@D@|Sg8d{nnnguC+5n(Klx$}ZyWsG*yz|Q?mfz9 z9#p=>sX4zR3lIcE0xV0f7at>!;z*u4POhG9O@w0MSE3O_B@d5153X^Z;SDaXqGF-g zGNqZ7r&qokO7idGVFxsgq3w2%P$hY@AjQf+{v8sq6MVHz(qUjJ`+|h+g`FbH&*|le zjHfxoanNSjlFCZQvk4d}M%+9P0e-uwF7C`zM2eotQxg;VE3hBd)VfpA3}lJ_Ms0=5 ztj1+Bbiy41IuCe&+k%ifMzQ63znM;#Y4h|dHp9JLycS!2$Mx-PUhhNi){FoEgIyBi zHoO<)f)U~onD-nquzeBuQ^{)Zw42Q&5_SjEckpa=$wL)3v_!7N`~71NDq|LeIn?Atu3H_+rM; z1^k~n=wOF2wZA*z?OSf0;4dp@y583@b8`>6nl6J~SRH~-Zi?LL-r2?F_egnzd@7T; zzlosqFfeQ{`vwQ)b3t{;c|{&*Uo>ye^cP)PXUka3AJb1S(JG3%xbO;%h`5$SArT`D z*Z$qhPVE)~b)F*jUu%PFBP>KRZ(`&BU$i-C8#ib;Ugm^}z=eLAH*iFb^5X=*sa-Xr zb5{6{<99P7lD*@Df&LB}e0;hbzJY2uV#KOO-)E@>UA2`x zH2y_7>1QgB;g=qSkIkM6yQFTUO1KGOL|2gIfB+dC9d^MOP*g*&E_LLVv;j(725XKB zKXhoX4qO4~uLlo*D9q%w{EECN7EjiBFedetI6BAnPvUJLo7c=ThC2l-_j}I+ zyqa%^GK5QEGW$0UmDaiUea1#dO~Sv?B29PG?jXK$4-umb)@@r+Z<4UbE%uJjCBHbg zbqAZ5l<-^IBn6s+y?~uLy%fKirc0|g*2Z-2ZEZERHL$Xu2G`ZnKK{P1P9IIh*YmeO zDa@p@*U+(bExosfOBdXD4|YsNWs8!`gu?Ukt1+P0*YaQI1@u7?A~F7Ox~Bm&eu3VX zG}D0lXq4w6-0}##;VOuY5vp&x<%wU_b9r^k4c3~_KU-|W%5g?_9&Iv##V7wJ%j6Vh ztPg|<@b79cYeJyuoB}Mn&Ps(c3zPU-7&(WmZ01h3Ry=C-uZ9TtBH?J%`FJS)J**{% zLUtY=1q+KW8<(g%31(Yv;(!1CHCt*A+RM>1>xTECVLI-oKqE|Ca^Li4JtWX;CDU=oF!y1cU*eVDJ;hKS*}3VHE zf~!|dm}KTr?M;@J|0#A@SloJRMkJ{Ye}J7?`=PkVnD(5Tw59og@(nHpr~vKeaot(g zV4c-grRP8=%f~8-AfFoF>x9e1k$Y485QVo?(Lwo1_N2!_+*Jz*m0rp3tJ6e z@kTB^>?WjN<-pdLeh%t#xF1+yS7aRwt-0itO-A(&E8W_;ue zQU@mRs8!2yV^VowqX_p0o0}^d6|T17I@OsnqpGOtCiK7Ru+XqAG6otFl{Rcr-br!V z&74uXrpui$mbk~=))1l$*T+ua|75{RCX*o4lZrrEe z@8lJfFnK@!sKy~nSguOZV-(=L6DNKAdergDKS!NxnSX;xI_2~&s4Ifx?da#HVtyA+ z&Fi2Cwm8Y4^}R4BCnp3lFKkW8g3nJ)SX@%_)Ln;2F^)E}^6W2$`{{3l{o}K}%ld8= zAMg%MaO7rCG3?2QIlX4fa#JR0(7W^%>W}#p|J0U^^ew5_2;|9Tz3@CbpJb znhrtPx1?=B290!u03b?$XW{57O+b2Eszshx;&Q?L^S_SBppDo~G2uBFe+M^TsDMrc z1tiF#ic3q6kr`EgP{<9Lg8KStgl(t&KMj&ip?hnm&4NW-Il)YzU191w_W#b&`@iXv z%q(N~Aq^{uw$HJi*>{HGXRO}?OHnO411NW+e;EMvrE!=_1=;kQw{H^?5;~Z{k1xLW z*lqG-?k5RdSzuWa-vBAU^6|bPSSW_#^n*VqGl)54Qy0N3?+PN5Y-Q4tcGHb{&&T^Y zrrVfMP>gb?f`X-`0eK>Z1^DVp-Hb^Ru#_z!HraE%4LY+HmfN9~B7=>zx-W&MSQh&<7zu ze58RBb#*v45K&X3R4?364$@Q^M6-u<`weKccnDhn1%Qog&pT-YVO3T9EMna8p|W0$ z6M~B@TUBmDMRXpNR-jnV{P;21&P=6}zW#lneM>Thfr<*ZQ0z|VF@x#s;UZtCk&X`K zreE7ajS_~RD5|?F9RI+%{I8>3A55pf@8yiC_v&d|rKD+$U-=B|8w_Raf768a+ykGN z1vVSVT8-rJocKt6RDAgArzUc%Zg2b^qJn~?)k3#$t{3#KDu9gWu>I2`F>e;Ru%0W#*-+h0|`E>~NQdrML(4^fjvgj^B_=`E=2&C?B3AZPA1?8OfJg9%z> z4~?xPefa=zA*TDG8huJ)9*}8*uK(N61f)NH8&3KRr}G@jx9eX<#Yn zvC8P)A1_HuV|>+&(3hDabx#7Zs>;nHGUwk-e$72bkWt!nx z3pm+dY@MacV+t&QIdiVZ$#n%v^HB;PUl$b}h-YO>y}FG1962&v?-6!-z)~r59=MM# ziBWV$lQ6-n*>a^ySsI=N^BSq zbvThI)5v+t$9d<+bK5>sO$~!6jEl-$oj!P_bAbL+gN)QU)1A|qEAUp0+~i)%oTG{R zNlJlqQOBJB)K~;xL#%y4A^WjeJJ52z=zDP;E9dp=2Nvd_m5pqqE4bE^!_R*$$mJE8 z1Lnm(TdM=@dT}!Q63a)cL&PKpvs$yfIk9h*ZEW%jS@|7ZbSOYIM_Kwj@K&wdM{lp; z`cVvm^(ts)*K3hPBN3%J9^Yr}q@~*5zI`i~!?5@*jXF8&WAON^EE)TZ>y8|$ASO8g zu+mRW-U=>Z@A5spE4!n^{!jZD?9&@RlKG4w4@#V$1AnW(KFJc-YhrJSjsvw{DlpYet@ilgF{4? z$C0jv!8ZNjzN(-Fo<)s*ifOg^ZR;C+2aIb?bPm_zcG{sRH=whT09wdb?E42B)T>1o z-0r=4^-8=2bl$ore~A8g;@u*Z_V|CU%nxm_8!8@%^2<9*`{-RWYnT79!s8a+?dz_4 zH$m)-44(R0`GyUA<^8R!0$Rev|9^XsbA5OPMkfZeYj*bG9F5CSm3jW>T5`5n+60XB z#f%(!8I0dJ0328a7^NlVe)+9`OCWJVTZ5Jl+(xvZX|^BOSihDW_3A~m1%mHo9vyW& z-%WTB!8M}Sb6N10gKNK)>2GPN00lx+RIb+F>Ec}^}k@t?)+$#`N?B4<-$U67oF)BufGP9MoNkfy;gWi ziXKN`fgVbc==cC9ep`5cYT7hu#4O; zpMiDXz)imz?3mI~Oug}_x|GI#jy^dtzD+Qk1o^ixg-XtiYwUZD{FJ>WY?V4vCCqnF zy-vx=!SfQ3J=kB!Tp)c2wI`A=dS9SP39j#orsxf70bmtxt3iBf2O}Gh z^>(k@I6x{yBZ*B>hg~nNbWMz7?kUASA1e1-&8BZhh0By5>j@!kQqcbaKNvv;th5rw zFps`PvjgTGIKC;G_d8m24!_R4`!V~IrZPqzB5aeF9E-g0#<7DcPk!KcbQH!uFvT7i z_|%5uPRn|s3+he`;ugy$U9Q23(Ex_}_v3Dn3S2@akL=%4&i@8GWB&y^_$O{gFJ7qJ z;}M2DhL>;T$&rw}P}{HG0eNsX2z8gnPheboXlcEU(DUs_IFHy0!0oo7p1B@SWvy=3 zM+!joQy*FWFykyeG-<^e^`YqbPl$sJ2F11_KpFh#wW+B_zcV}a?$x0dv!E}k6RGQ2 z)Bjje{xPalBpp1#p7;ka3PMG-rJ&8n_y}e8sqSwHKK12Y z#mD(CC>%TxzkC@$5Do@*aY5b5%iD&6JYDd=hM52OV*c+u41WeEzv`^|6CdR_IS-`q z9gOCdurlYzc7Sf2y0w9{=r3Pb%BeykBcFZ5#&drU>Wc~cO&d8@hO))(pwqKvb}*Hh zd0U&MX1459fK>Rg^)M|2u$`$$acJHXfnoQ7b4B-0p1Ol(h&SMLR8e=wMP-~Mv-HAu zOdbjnl{DVdS&`J3x6b>XYRSnAiu2LEeqa5M``Of^Pg(OTf_NAwZB%omjR9!C#j)hH z(NW$VD=mv>LqzGQv?Cj(Q8lLWVmPxt;1Gh zSIE53-R07&k&)u}VAzquQc?j}RYX7=qz5AF=TTo*&h-CeiX@ab6BC}0_T}B(1p6U- zTd+M>X^8@-%N_!Z;8?&vvn)+RxEJ7TO9JSw7)4m>J0NT**U05;8(w^SVdzbTvG@3G z58=@t+e+c|k?}&6?vOzL2TFl|Vpj6s+HqC-Ee4=kCscbRf}U-2gUuiv|OF9aNhd(#)sRL)xj>s$?|alm^=Cj$ngLSHHarpOR_a1w&f(@o=4xUXXr;(yA+8LEAa* zy1b_cr?)y_SCbI`d?)*Uyx*`mT!5TNwJQScO%-C|EqBsnM}6G381kjrL8ibU7M#^v z)q>svbC4FU>4Ev$5|zwfR&v_QzdNZ`8Lpe7md$YtRQ(@5Jm=(5@OBr5rjoQQwirq! zgMX?24+{Gp*O>%XB4bQ0X<88yE;r}<3(-+gcSde{!W5nb6GnHhATEYPtvla*XA~Bu zfHphLHhc2D($WHj1yT*JNY4(9`qtofqPDi0iLI^Uw26O4 zUF_O@ON<*I|6GGPG~;tab9|dydaf|{LvlR{lvGM%>7b83qU;$zqS*`#8&ZYFsm`+RU9 z%sSgWb;H?FUFwwFO*|Vc5JAGmrB`ucN1&go05&ba&gC*93w#41z2t9K^ioI2J4yID z*d&y^scmLZ1nc+2q@?ff#+X&J#54ifRjtR-2ZkRb=zaQJ14k;P#C%SQH&FX@3@g(T z3pY;|z1>raUUTqrD#n>eNd^K=7rkALsP(y{v2{@ZkV&Il*&sT|j~GGon)0=tBz^+f zFl+fg`%?GYwd(5j)Hexxf+0bRmhR&~1xWAm#_q>w(P3=lcG`KwwEbjKyLsLp?v%iQA|SdnVI=bY;|w(qA78Nc`p z>ib?0BMbl}@|sJhHV**azzcJ~(~H%Bh&1)=ZNZx3?e}1=`~oImtRHs2w!$6$iP8Wt z1JComddMI)b@0&L+^S~6%Mf-9ob4~{XuSiieE_gNm>vR-6Lx{F*2z1sbamIYLcO%^ zBvNqcUeEaETY5304h3(Zt7dUX^)2^16oLP_Xh_e1Ulg|IEuoa*_p zhXr}Uqjz`ha&3|+V|$W2AI5W;85mUdfKZc3PGV2-+{4Z&tB7K&e$D|w7>GEXd46(5 z`5SaB4+|pYFW><1Fb;+J{rh)n5f|!MdZ{RISl0XN{UAPV4|&@sjo9g)+` z2CyBFE|xQ-5aph5PDQgZQ(XFy>3db0JhR!B3H&2;9wOz7L8K@6iH5hI5F}4nh!4^& zdVG*t6h{_l@4$VJSRZ<``}_OvYD-G{13s9iHxZKE7I!qevk z<^==Wtm)pau1Llimg|0u!Oel63Ia=6wL-UcZ5A0+%x|ZSyQ&g|O9N|O>xxoe7X|1X zVW;YLf+f`v_yTLDE9{hz$I?~ zhe6)k4dRa9O0TpJ;CE=dw6XzL#|-XNa6b6l&opw@juL&*D-(a+df%Cqv6DPJgzXWb z8hIptnE9BHeyw(>S2LJRAeGZJz$YMcK`mZgVzsicrxkd_9(=T zUmYPvWJJ@?S`fno`a6*;-8$b`+KnSw*w_j{lF@JAJ2n*)MPpBMN3;(2lv1$ z@OE~ZGK6ZFgHEK5AD8QyQn+0p^#p07ZVJ^K5#^v zgX&k#voCsn)Bv3MCqrQ_sLPqb>nQKvzn>B2DF0+_oJr8JM+#Jc5PXdQpaB}DmBlIG zjfWbN$9VBu?l5QEiRObgLu~`@-+xAPzX+O6zmPXhQoGOoZqxi=BHg)#Vq*~g5NIX86F8F9Ian9Xv@KwUpa=IeNGs>3;c!s8~ZaC;*ZR^I6eR6{VfXUMT zxuIh6H&rA!crXr*w8!V>#&K0NGXLcfprD`t`>gVIZbAT~C|j@V`>#B@l_osi=rFsd zA0nUqoWOVm7HX9y0kb!jdjEsBw}6W3@BW1kAzh*Zio}SD3X&31gNT4dSTqA7f|Alb zNQr_XAc80%2%;b;-GfpB(j_6?NJtGaargK`=m7v09aesiRb0EFol4d&uBg5B&Azbl(@_e(%h;|@XD1MpD zpmF623zTT7kP*LCMiy_s{H_E6epF+mIQMrV=X4xb;>+DVd!ybXdTdT_7tOfkf%lgC z5+-GLw}LM}bB5=Nn2OrXVA>s}bO!3tdwUpr<`N)``e`RiaGvFW_sjYuF#SkVt2#_q zec#@DY7~;by}lVUyj%%8{QgcLm`an9$5Y zEU)G6{{37<3*F3nJLbO40J5Ogg26_rir3jc1M`N`qxy^El*}V&4@2V17uQjuDq&&T zI{zj={iXp23iXec6eEiNTVJGs^s89mHkF zpJ2omoVQ;!Vwh*xZ^^Glj?OVpXC;w6yA`6I&!{~n^6;zJzM9{5)UewdtNbSZb_w!F zQ(RXWYoA?|Alk+Pai)p_xuHK*L@XZ7@f>r!?6>5+#!lN2j6a_+8jCA7Pd6_aV6ISe=i!F zs>64w;lh~5KCzyo=np<;*17A(@oC3xqcQz8k7sW$s_1KQ^XkH9l7Eom?l$X^6R+kI zn)tPA6Myk_bz$FMtol&Q+~CkXmau;2>MHX!+m6B8OrG9QMnb*YpfXtSO-FdnezD~; z@2I1@${t|Ejld1IWA=yh)6m^dK)ZMMBut7lr^F6(?Q11fhvbqIvka?TKP!y-0usUW zcAwvTfQnv8(H&Z+l7%VT()U<3&wWQLrQQK_Ca5g+-zkCsY~T1Y(4^{&`OhJ?8C z+K;2leg?obnnbr7=Mz>f(|?+6pQOu(=oTd>$CAGVzF@x5Ca(4Af}{F)#n?U7XY+qf zXnopq%}oozwqn~(g;Hm!Oi7QXJvx;EvC zvW>@`)8@{5lVj+=Eu;U0^$=hldb|HXC)$+s`~Sy++J9KNdmpu^h!0Eh%MW&Ic7A)a zimUVodTrGZNPLN*pkUhACfl<7-1__-5^-Uh}53leN#dnu>G@u_mLSS zHQVO)9>w&Nxi${<9P5L>4D9ZRo0i>JpX;KhT*de1=Cy1TIz?1NBiq#CRxUsP@X>M(8P0z&Sw{%;4JP(l0g;EG`z2iFAofyyGUm6m!n`Yw3=DKdQrR}Uv_=p z5{*-)wZQXywA0wa#CF0Y_q*Oyxg(O!229Vhyp@uc#Vi}2Cf{COO5U66uLSoIa^Pj+ zPant-rV8~Z`h&Q)?&2#?d69>Q{u)&SAbzL+dmo0QL-Y}gui5@zksa?9_X zFQrdP_E%#4u7@7UXSp!onro<6u&>$2^rDAnfut{~yD?Dpj=$+x!)`)*(8 z&>nII=fO1+v*HZ+rQ1&tHV)uiAnRqx_xc&iQDN~ z3wu^SYKh!xPq^OvR;J48!=(jYp-hHgr;Fc?p}5^$EL@JQk-m6^_W$a?6Z5;3b`wwZ zHNR_ZJ*}AE|7u3AZS9Ah6r`-vl71i)F^i*0DUDD}WxNo~f**rIhPSCErkzQWaw@-L zLxCNPv@cRU-ST>O>Q~7Fp}Q>!Q)>iU>{=e@)-BTbx%Bo$9oArjIB(^3{I8LbLp<0e zESAU4zwv${+Z{jtuv4?Itj|k+IHEM0pc=6mnH-HG=VHiga?=^StJ_`6>ycNU$gVGs z2w?sFt5{4#SBQ;35;8GMR`g(tRNjo&l#bZ-eK-zm^Y(d~yxVn5rSIO+7XNZLR;>Vi zDl5`AomhzTGSrT^{P0Zn`9eQ>D&%hdLHF`sR(xdl20OyKFuhaJ5lzl!ytT19N|l^G z(^g?s){LLIwy~=mz@a8)`cfPt7Ab({N1T4InKrHe>GE?ld+;6%E+7RL>l&(gq`JO` zD&W~Owm5t!D{rrLu@8Fhx$D9-T1;@B*s|8&(Tpi>8{Ln_SDKiSMy z+lHtydY0X_|N=^Cp%-(oHD-9JnPjyQ|xw|;8wipL(J08-7J-zZWK;_0lJz+ zy?y(DZr$5^>(~vJcNz7@iw$5E0%Y>8g;iEo*09Hq^+K!K+uOlqZ)@z)*eCYyO$6&Z z)n2Li&@$cGdsV~jAGHBnQ6^Tf#&HCKdiwJA_O>(J;kD1~>@lM@i|WBAX z>I~+6za3@&<;xTO;Bb(v9Y*^f2DJ`Y@9;?73F{PAuk@R@@&<-UTEog%Goz_;?2XXf5x9MLokDB6Jhmq*ZOjLPQ5`;v{1Hg6nb9>|OC-DjLtDYgb?9+%rxcC&vk zuk0P-OGJpiGM%|7yiwZOFh;292aD{PXZJ~fCj^BnIp2M93Ul-3O~F{EBT7TqHG?>8fV6o9nY0@nKSRWi z#F=4WCSg}J3~CzR@gquHWO-*g#K|wu zg?9<(B`Ql?8;`kFw^&BwXYh(kpmKu=G4C#Tm8tBtKev)pHg52W9HDftvs$sHQ-^H6 zA`Qy{F{xnn@Qe=@*HL(}f>KDC-!|BUi51tEy4(PsKPT*A9EU$!1S#45l!)^e2qekY zAOS}))%VJ2GTJ!`iWGzNuXtv1s&v0S&!?i^)dE3%9siKR{i98XjGcDEmA8oW*q9~b z09Y>C>)Cyxl zK7N!IYi6CirL{9B*GXBEe+KZDDQ)DH0~lL0bt5dV2ex)nhksoa&l8??RR+{nO|nY#X0n~y)$<|=g9@=@0;KgQ z2YrjCk+o+`|Re66cxA#@5^#8VTl12M^g4(tmZ{xQr&+1)_qHfE4glY9eMI%|myf^&KIiwGjMA)7$sj@vL+-a`4MS=7-}e)z z!0OIwYJnZE&waOIq`cO1jIv_*eOJEnV>6#|bfPIARQnV_?t=&u6VuVxEg5IqD1wfe z={WdiX-bN!OKGf#ei>~dxORz}mUS;*Rf261lVeu7v-5RY_$xgYc1tw`Vm)Ok1b7lw zMlLQck5P|1B!^X*%EZ*M4&E-lAvAKT2?X?SWK)lO3S@PnI+DJ{5tFRfsu;rqZ6?>PbbyK2H9ES3z7pm zS`yL*&v0;UO@J8jtvuMxPbOaRUu%&w?X~=3u=DH3?Jov*vU*N!$nGyZrM#Dmi*gBR zaGpU;4(M2VOn&&P6Z3(%PoG!=tWSq3&a@`dAUAH_ym~OgpVQ=oj3DJ~fAhjMeYO7W z`G1a6Q(t-7KOh)zRVi7`&fNp zQYhm?jpnt^*mxDc`T)6leezfu=Jxo_)`9Z*GN!F&_I0OY1)h?+)PgiQHPJ0iqTpL4 zR#WOSb86vZR@V7Tm!3%F?j8U)5EgNNo=N@o{^f_-{-V7}*)cee-D+YLKlTwDUoFHW zu~x2UNxrJTi;Fi%P?W0wY*C{$e4U={QO%eXEl{x--l+H)xm3yxdkQ7_ES;VE(!d`> zW%G=(b%UhYg%LFjOgRa}yf$pFa;wME&{?abq9WP2yV1ihd4Isjd#+O%!iLNuuXAQt zH~EEkLatmvPC&%Eu_)JBP#8mfRcwu~is){>?~V0tokLAab?q8?_JMKFV#ZP?Gj%R$ zta3~E&?xupqK76sd2BH8>*et1>Rm^)FHg91fzbEq=$5U9+Q+)m z$cWgC8LdgDy94lGp1AP-4W;orkaN-xy|Z{Xa{J47n50dOx#{T_yu_yyJ=y~V-15YI}05WnmBunl+Ve}yA$+u%YSB`iBr}3ku{$k{$Mu&7&2q^LEoyK zc@bpx%W-wv9jL&4v2NoJoAUWqiPqNF=azLC`nlj7`0^#&8^?Q(?6nRrExoN5(dAjB ze={Zoc4oMpo?N9WTX1!G?&F=zqHRL`eV`}nUF>$-_f$W*lXI62JKNG|yD4sO?MovD zg7=%(n~DNm%ooO?xCI?ebvPEjVL$L;tJ()i;rJduoz36<6H<|xV@{g1?3ks1gQE^7 zu2gjzX63ogUAvfTM6XOx?y+O2^&moE+xHJr) zi91@|Y+v$Uqne#M_e(vDr{E^IOOmy^@s;8Cs_SUZUwNNQy4;V3jT1_W<11q|D@A0| z<_Fue!=4kY;7EDvTHkXUR8d;71;)vd#Bo*NVw$i86wNtD?N)W!i3io!H?6I#8o9#v zynXvttZQ&^@DF(Ttlu+*Jt-5m5wQL|%*h!DICb1Pb!)&=juU~V7T0oD8qffyjds3B z#2Lb$61Q%x7cxbo>)bvoyX>Unzlv?5vQ-%Oa0(HYl$U$-G0LWOnK}`$*0r>>RIxdp zv+qZ=a0y>s36B+}5TfI~DwwcT)mG(nonyWFkhv_4?++nwzjP-gFMShW7&@J;vAr-q zkEk-D78e&Yv$I_pL*|7$pUi=cLsLOh)1@1?Zl!+tvNt3ogoU53v%Nh4w2Y`zr<$y0 zwR72zbV>X2%z0qHKigsIii=71xhYRv$6WGvu)(`yKg<^=))*QS`a+&MY-T=4WP!Q`kx zOm%{6u1H!}Ute3^^*`eDpmirgVzwDADmMX1*aA4FdkH`K(-5cGdZB7#M=Uuk5OfthcgmI@sB% z1CJk|-{57xWgkErU%rWs4g^H$pi{3iR44=$6pRcV`tz(-%|8(1^SxYf0@C8&G~qQA zK4Wv755vLn#it3!>HW!HM_2~EDv6+ZB`$e^Wy7&A6$YA^I! zdpIFEzi&pI^`e%d#1l0WZ3f*k95Y6V#ig>n0@Clc>lkoc^9dXshfxXlx>4u5pCDCu z#ghH)1K70UlN>hgYBD>MmIcYr%|jcKtHAx%%&5w@)Hi2i+;TXQDy+AkJSn|kN}68s zsGWUWcRNZQCCY^PH1M?fq-$o!0J(W@Byz25vOPgZE@E>Z=Z}>wX}Z1CL+|J2@Ky;) z2BI&Ui$*s>%zt918fKSDciEBAlWxyh{LFXwy+si69G+foRtS5rqW2pNfA3K!MEPh%qK6h6;f#&(+HjXg~ZP+`)IwZ|8GC?>UOY zqYkc$R8gUH_L$@zgkvu+_?`Sbj08NHXQEIF#G3tq0K~DzeCneJqUvJy6-pJpIjoEs zZ6jLb6lOt6MsIA)3qVZTHYvxnTu_BahO)Wh{PBu+?C36W)mWBz&uB+(*!VrC*${92 zUOgSnSwmbJw0MDG39=_Y-P-lIvYj|Bg{)NSJ;aljFywE3ubG2RIe%`C2Wsby-62fVzzoH5iIjy#p*uhRl&sP2H0 z@{*$Y|9eqp>Cfd$|9VuC{*EOcx^6!Y``y3w=Kx%{0Wm0p@h-&|5b9h*P$J35IF3}W zNH9WSM?GGxeW;f)rZE@{QbY|ttM0c-5zOMe2!9%mVg0uM zd5>jQ{L0=FlmS|&R|@!HH)Q%**!z|PCQcDvbj6bXc+pLvZ<9uP`C!QsfEEn-JGlOq z1P#k|5`8#&<*EeM^yw>))RcGGOf3hQy;+Z>E?zVx3UM01es=2An?)?88ncSplJ@(% z6uKNEFwB2+rIaPS$w4gwTZpr@%BFf-(*=#?{OOsQ=79Xgx#k!)tCczf79Zj#!|HA$-^`U zRKrOBB*=6(1^%YQV65}MNs<4Pt?qx$u-`WztDvy)A}Hl1(UvE}XO)`#*|7zARnCk5 zvOl38RX9&IsT}AvT1cV%M@BX!YAwp_hO8G1=5542gKutFpkWILWB=ri5ZS_|r9PLw ztNmxEIq;3NX-(OC&U@fiHhUb8a)n=D)Vq}>V?GG}$9Fz$bm?Fvc71N=-XAO|ITkQ@ zSu2G>5BI&TEp8ttr_=ABl85D;R9zlIehz!d56hjcKNC@eA(zio@${Z7WC4zV)PJ}D z#+C;?sK@979<Wo-@`Oboxye3rZr*`!!D`LZyr`$0}fZ65j|_hkB5i_i&uN$RpOw!zP%qOAK4WTKrmjO4~m8sw0_X|8axCTjU1a zIC_088K37t+VHUXjY%P}<7?c`Zg1?6aKP5d`{h87fSEc{oo$%^#*yp5$+gEE(F}d6 z)Fq)@j^JNNgWUZQPlb4nKNjXO3bQDoeGYoo%fL#FYlswJN8~rR#ilC%bQQin>iae$ zqdu+L5B5Bzs;#fHZB0$9-ko4a^ny~6Gh3~uiI=q0NY>f!h$9wNP)v^j3Tm*bYb;7n z--A4V{hAp$apJ^mR-R^U&lEStmkM#Vv`pL2K*o`GaXwcDOCDHO6O5`+j&0}UaLC>9%D%(cu7*3@$Tu)Q!72R`Pj*@y_sl_ zR!h&3)C;Sh+jT3T`2dA_bO(VZ_#f|*OyAf?nkdA-OoZ`seWj&azb*yjyGoX4$c`w`82AFkp?)7k_` zio0`VCIoL^a-Apm;Wrb2T7d+ldaVWUDVhuq_WU9ok&k*EK0Kk>MpbJkn+BFwV8kzl z{2+hzkHZ&}8xKZp?}A|zQ(hMHz(Np>%=%V^O&yQ)p-dT>U#9;gXw*3`5#kYTf4jMfFK@9Xb%Cgysw ztPm%5fj~+b3ydwBY#oKI9DO0yD9KOd#9loZq$qN#qoUmn1Ve2!$iU!WtUbOM3)Ws{ zS{J`U(Cu5~^md8#q)jAB%8%ugN^b2pB_bX-UXIe*zASvIiZ?K1^EK3oYR%XBFqVJZ z`Yb44Bk%KhZ(l!jXhq#BJ=|Cvi@}job=@5Oy>1+k$XNQ>VJX0Yc&4QwMVkC`ZoCr{ z6Q)Xml+XyApuJ3iq35%_=c5kQdjRt`R16gwr!BfndCdbEbgRF@O zjMFM*H*B^GC7RH}T_r?rEWHrHMT%w@kGBbIgsmnLAQ*?rQ-@{-?;K{kTw8lMeJT8DS1AbmD&%E+~P(^tKu<7P>Cw7;`Mjwq-}v~rQjRDy6O+V&oUyb+1AeONVRMf` zA(*?iG=jrCfGozM^;c{4k(Z4>egwDNy*>^6QpL{BPNiOH5C>ZktM>a36CmJO9sTp3 zcUDKvi7ZXCv+d)mc7TGi0Qj_T@MG*DjCtl** zt6Lz)Mxav!>F3o#W;9`p-PFP5T{6jhV{p;^MQrRzl={_k=N@*l(5w&B*Tx}7rXM8h z6OHz(rKWxSN%v_ZE;hEbqW9GE-fTl5{4It~fj9n<$dMhD%+~^kKec|7Q&2br#3AI( zRrcElvE3@|xh+|_Ri{oH=Baa0(I7B*PGjHpAg$t*RFhL>U|`_IG!JqK_Z%G0Z^MjN zRtYkn{2tY`1wwaSxKc;4nB8H&xr;_`7JWt*1s z-5v_Yu%eQ{*2K;XQK}*M>T98pH$6P86s-%{=`7D@*<7VP{v+QQL=AiH0 zE$o;i*ApR*F2=(37!MI3H}SO_Ju=7RgB5}yTtxz;a+aJv`lI2NfUQ^kv-`%4WaV(w z`A|Wq);LyeXH1`ucPO3Wn%V%`DV0fu!i`5 zy8OE>-+)G-XJ+;csIMBOQU~mR14BEnO?$6vt*PAnvzKSjo^A5qaM!$QWMmY%cE&7B zbB>!FG&xP&Drxi}Is8n(W0NK#1F@3J8GW!t7MZ44Ze7#E` zn*?@VO~9$7ELou5N*uw$`&%Y3O-%gL8IJ>^NH?mt^b~D3 zlHj*c2Gr7dn3)ZAbyP^g>(^A(>2Wx@vaBRlW)rw5Q4+jaS#V@o8Mv&)rNKFd-fq>R@``ac@&Av2th=Qx`usr>oI6-|Q1i5&8 zbXpzxEF>awc~cXmMV^|_rw%KwVo%*hwbPd4aGADBLwkD~js!D+#_h~*APBeVoi6)4 z^4|&SzyimXvU|C?xm{Xos_i5GscOgv*i1>~=N+|6gBUAo!oeI5<*I2zsPU^U^ z2AC1W1N#NEx)Y~iWxPPfhq(a_5?AzCdI3PXCac!{`==<>YH&#tU8Rrgws4>vjJrgp+Fs6n-K-)wb&R<$r-GCYbD1=2f8O8iN;7Lc5cTs z!8}6D4qj|i+r`z~+)PDVWQ|6>^Pq$i7rO&R%_?|+daMDL3iq(`L%Qt*QAw2%QZVe@}OXe^T6e^D|{-+yw2{}fF7Kg$%f z!#a3X89JtC*iXk|2DQICR`qq_Md<=GS`)#9S<{1n5y8 zIT=6IbT6h$DdSOy#%Q&irqh_(zIW{muB=b#5Z3~E1WDwxw^>x_FD~>r(d_1)ygrq~ z9QMpzOj`6P%dX0xu$*G6$XW;+?-Lo@r0Bo3)JO5OtkFI9Z<>KY$#*zI4N9EGj{Qk@ zLeDK@iUqW&S7e@7iSenLGow7n_(h`a^Tvhn^68pBe0*YoQXbRt7Y!=feMJQ zC&a`w9z6KMf~;Xbk62AFVx5z2K-dHEBmAn&Dal1m*Co7aYVi4E z-6BgX^UdLT7U%=k-RgIC^T;(<_Zq#XL7d)rq!fN)J-x{NB8I%q>v+!d1tW%##dG>& zRwFaFLZT3-panxH%LDgiCPo>Qmz6?#DJdk*G${+Ei*B7j-eUoiQ&WvF?oGTG zE?g+Vo2BgRe=a|8c8DZw4jSK|l|FKaIc(zzB8C4`pk}5+2w0m$53mr{UaW0kW!hdO z%U%xCp*}n#nzt))k}-iwON65(UXlimHsAnJbaIDOC>(i+^^j_4?J;F2ht7RHGE00v zB2PYlSs?lnJ709O&S7=yN76KI?g~2787mf_lRv3%%xOhv@dw$K<GdQ83FwoK8|9DKVRd#Dah*N?#kw;eakZqFRH6}W; zEm>5L@IYZp4oi5|M`RDi4wBBRU`eD^tXt|k43?ZkpimI6?QVgf&+D`ZG?qEJJc1LL z`z7-f4(P4cXMEogU25|Oc-;ucTde2=Id({(nw$ZRs5@OeH12Y`^5x**o~McwHIfoX zu^idM{rC5k2P2oMC)+kUFrzKGv>bbR0>bs3rSHmL&oMAij!enU{xMZ}OK@(kmK_m( zE&fd3L*(PffO&;Q6ao%>J0?ij;${(ROG^v?+WefHH+fF3SA1(*ZdX^rp3Z1cVK0}; zVbpms^B=K#nF_{F<&UN=*~#42s70OhI;^G^dc<8_v_2!^QNLaN9(hGlVWE6hA@8BY zo(b!ZS-Kb(I?D#L5S>qCZXIP}Sf4#C;z}ZA2ndUg*ug0`=$+N<4rs#L>}(dulr+7) z6(~G&dGYw3kVGG<_zq>!hig3hoBJ2tAwM4bR6HErW4Z_WJKcG3CEVz8A=vbnm-y9j zdteEqA&)eIn2g{O)%l7|_tZo*wrbkd?exV54|-xHEBSS*ls)UCD3lZWSk#SRKyJ^Ih}HXaY^tz*rXCk5N6@$j$%1Qs`d>qntHC7s zcEXn?<4RI!l!frhU?97Bp;7vK|LqDEq$V_k>Kenq;DCjq_4$$yhZYy@dAJVIF{*+W zoq}R{`*82G_RmhPMTKK(eb3F91^z;TP_eo4TDHYfQN5-71VRNKBy14H>OL!nZgE!@ ztBznV6#f=j5}}b0k~u*6fmylS+iBRPrSJYw1?LdRmt&dlQAR?<%GlexY&y}=DASlt z{p*rh#%2S$u&Agu&adr?4*Lt7d5V8zxp}RpqrL~Q2$Wm9JW>4V7y^6rYy8B7f=e#y zU2bNVk>d}Tk*P`3*0-`SMM3^M#6|H!gUM(X^XrT&X(8bq-JVQcT@4c>q{T;^$PkuX z>5gEjI=ea2N@pI?qUbA5x@5kGw6MEz45 zgu-+~p-?46_qM7tF!jH;wA8^Fztg?`Aq4EvV8H`NH}>^0^?1nUYCgj0&mj0<-R1{w z`z|2zxKfBOB*FWJ+e2d4^uB75UH^Djqu26q`Z(Xft1qOGp`_#U0R{5wVy zbHk^W0gyUePE(Umi_u^^WqkE2wh*NU77`G=@JFzUs`#R)sYu}%s9gvxQX z^Hl?>90%V`vr~< zpFY8eH9#}X%Hge)3|L6uWp+*N@h!3jbW?(yZXk_Lb*S+8%Lg9egA0{<#>RuzFlxKR zqc`;YpmZtZ*q?WSas?s3{}uPnFSYvpjlu;vWKhFfi9M&3?|k`QS7N}BnX5kc9{YLg za=8v^R%JWx1%j^O{f@LpR72dWu^kC&PmrWgTel_E72NA`+F8H%vn}!Zus-H0%uXd} zG3L2F73X6z^YLbu)5_>M$P|QRWNx~|$HYurqkCL+9F9J*J?Z>Q=9~C(I`tGb!QsHL zBpDQ>;7_ms*ma)g3YYHxFugZKH6#AWvK z7KguH(qkhkH`a&fUtj0(&5<2m3l&BN1}91%adZi8ZI??Sb%?(Pnn<@RZ19OwlHIb$+RmT+$$iEyRIkkx}}MRDm*;g&tD>* zYbhl6#Fe^V4)fXx5CFhx3yX}@zt6C1X#rJy7Y4 zZV7~609>(Atk1zoDmR2uwjZLe<<85?d!cwYf=M9tG`~c~U+yR|n8m$YMi7WrH84#- zdc6trzhzux7u7vM^B`Q!AZw*3$b4gglR|xao@9`B=kZ~_MZ#h{R4Q|+j_R&&#-P@B z1^zPOf&!0SetAMB#G9TY75#4jAQ7eE_%{UzWdC2W<^InC{QrS$7Z|UZY;p{}GkK~M ze|EP`2K3?du88Jm2!U;b{C6%QvY(z zlMpqd=aa`EK*j}a^|HqJYzS;k)8w2X_2_?qZie{?h5e#ZD!mlwTNNLKveyCEkM-LcC^1~=7?Lp zv~WP*lGOIyq_krQB6mo49zd)KZJS{w~S!;v#NS!MtIF z&0?4@W`9EwJ1Jz3#|SOLz#dskAeY?qa-40qP}!zhpQW^Lg}xW2n>R&#!E_1gJ)Xgl zmR66Ps?yKDn#p+W5C}+slVmn@u`mZwJcUg5_Vek|T_r>CJ}Ql4*Q z{J`;i(9UV*);C|mxbd=QMxUx=>-fjkXECJlh-p&pwuM5 zFD{Z;Jh;enFqw8Q=EvRq24^6=K#D_YH2YxCzSsgNa{LeJ5ejdEqKk(*)x3v9V{7Zn zVuxP?xl>P9^BKWDi%t?KCND*DE1ZiP?|l2=w>w0`fC#3Q>l*)dqR5@aAB7rG{iZSp z4M(C&WNzHvMQfXr7A<49Rkl9!c(f&r z#o#hCwVpkGOobE_6qq-?IEe(bx9hSTl%oCg@sRN8q4S!NyW-6}&=fTst*B_6kJXwg z1Z%Y`+w%u}Wu_kTH#8jHVn$NXRJB@YTi6ZmZ~$+neDIEx*Od`RDGQ7NPexH83QzDt zR5h%HwO?J~iA%VD&%vRnySp2tpm2+5BdQcNFTc@hNvom5(uX%g*UaMh28JWP&uX2K zbu+gKW4Q-9M0VaMt*zSe@5F+GF+)oU#}7_u92@=kTz~5A$;&SSFEuCgu-$kOJ4#Hb z;U{%=)--J?Vm)c1I-B%`G72QU#8pD-Tla^ zQ%rzR@F=*RfYs;eDX*ZYC<$8gOtJ%r5qOln&xEoZJOcWPOVxGX(9+UfR+VrZR!3qP zk?*8Ud4m2o9iPJuG1zlZ%}KUJMQrYx(B!$yXnR4&4=o)XdIV0>2}MQsifF17+UoJ8 zw>%@+hy2et4%7TUGl8=MBKT7+3evCy-{^6S=sQ(#lE57(E9tq!H=pfvNU2U4*=kjn)8wR0$C}vtHwdC z=T&~Zaut`QMxBrq;bx}1`~IlCHIlL$Os-F{pD{N{8oMGQB2!>>X1O}q2)6nE>h(o& z&;`l?G!XjYv23PQ6FU0i)%`0x*aI3*4~1mqlre$)18i51hO!Gh<8>%G$B8mmGfD_g zE6Dyav$(hU*~P0Dfccet|477oc{lVQo&;fTzHq@W2S{TyKnDeCDG4Y=1H2eUV*vv! zMh}i-agdD6nZ+5jIur{*j84f6DxmQ47(i=*5^UgLSvMe&8ojpUUwt2nF~sfgw%QX| z44E_xh1x88S>A6oHEUOo$6RX%`Nt2Y>Twn9<;%==vV+;f31)O^eeofkv+>yPZj!~9 zC207Ncb=p9#n@w5>J2NQnv2++o0UT+ho2}+s;3gH9*69ZSaOkbo)0{QcPL z=Y_Nr6+(b#?X{H;8z)2$5f`;Ju3M%_5i!?ug3i*}%sP-hD0yA;5?4?tYp|C$z8=JQ z?;cN==|Tp~l8%%Wk-tzS1lEu=85CO5b5b3B#{YC%ZY2BgnI(G*>ARlps~u{UZ?u+| z7E&qX2=-f8oiOdpLyn6M_VytfGTN6-lWsn>3&0ih3U)Ti5IcTP$9|Z@OY*i8~FDwR?1@wVOO1n_S9SB8% zs~F8w)~9geWt?r!Wj>aOO}I{nVv!HzsUedon(OR-$~Lt(gXHGt=aqUdP#7Hm9VCT4 zeR}hormd|A%*Ia&hkJ7ogv<7#`nemovfQ|kJJ#0dSTG66UE<{oQxO>Exwc__);FHE zH2=VLhf>BC*7Q}cIi)LaTXm1#_Xc;(pxrfpF~@-wV_dHq&mvm?<|!djerF#chl)QM zXJloYOifKCSef_SsXlB;cSo?49*cEMJP?8&WuckJ|7K;C@Q`EuP`e zmAP>L{>SF8w~URMA$fres@q-v?4~+Euwcxb{)*7Om<9DKxBh#7X-(!Ec);ymAK>S& zDo-!xBZ0s9t7F51Wo`@CVF@&I=Yn-0SaT3x@S~2Bdf%suA>;f9fHe^CeOlaVlv*Q_ z|0yUvQ$O`novkI~b}S0W)2|(G5m^)2U6|R~8vwhtLa6XG12X%l^@QHCQO{Q$3i=8a zmX7|9nVH|GRQG~{{lBL*Ln$}2ZjFJ0@r1azCfvoegs^afW!hhEQBcpwKI3ACLeLtv zJ$d@{mwkT!-BKLP=39}xa$+NQ^S|EBN6E^{3RGYBd$1Mb_>7P4c_;umkm`bC6(6*4 zzToQWs(K$q_nHi`5Mmw=EKAt}h2YKN-kK5r$U!IQuP*eu!vX@!ok8U#B?gAFr%zuky7pKm5h@ zZ2pPkO5InfD`bmNX7e#}vT2CH=TWv_L^!WvHJ={ZgJ?zEJMVU$2X60Ai`1dl zO^P;XT>Pg9#DxDBq(%Q(vXsb?CKteQ8`A0vToXV5zJ_Ci-iJ3S+hWk5IE+1_>h50T zyIhIC4Z!p@9p+7S_;-cdLa+a69pIEbmNWoehn$?gm#MBU@~12%1=%vG4?kF)$0=y( z!gz_x+LJ}n^jj{LX#2ZApI+L!bzLDlJDU~(WyN0Pd2B4jOloT$U&QCV`>VL-1dfM^ zj5WM9+Skin!M3}A-}HboUeMyMb?r>@mo1ldjmGIY;^rfyHIN3OaNaBa)bn22k@QHs zaTIga3qd5Nvh>eT0?^C3yz{IW!u^O%IIi^kANpyn9$Q!zAs4!TQnLJQFgbi9r1!eJ z65$IY&aCuW0_V>4gGf_zhLFsniEj!7Z^kPg+S&?`N3+hYnFB|kKSJEP~K5U?-qI4RB zzIB3wDmL7UpS( z|0jFNCh?yo4dlOU< zYdghin}|{!A!50ur{sToIe!vW(}KMp83i^$Ef5WyCcp2U$~P==vdG1vA5fP=vODG^ zU%}S%=Bx`HF#A(Rup|*){hGaei*BB!%V=U;5+={+(dY>Z<0jaV0IRGk(Lnu%8X0S~7j?o}m*XI}ii(fVG-0Gty?5`!v^RZV zCN+g)8Pv7hNq_Y0_HCJ+@Z^GV`jdtKJw!XL@@f4^Fl{==JgXaOYKaUs2T{>d_44Ga zEn58+(yiosBG>A9@Y|TRx%XQO@zq#TvVFYBjLQ9Q`is~V2GQ$k*i(@uQ!kp&fFO=S z`A~tZ`NxCS`^rA1g;JGrGfZ$EqKXD-9Xu zAJJCl3Qw22842!d={3BR0OO7SJxIZU{U%g@6h9P-@mjr&4X`PmSCW~I=Rvrck2r>9 zO#=CUC+H^*9Fw;?ob#g;OM^G1r7-4{ez(NT&I7FR^P8SPpuIS8$smL zW~cx&GczBPbk)(0otjEmxW;{DoxWHA;UZQYy3TGQ>iS+gk*V5n>uwA2OI~ZOe7+`Y zAezA)3nj!pJZxhX&_-jbP<}fsOBg#;q)GXN_n3QubK(G@i#c!fd?`6}%jJR^HDXPs z#t!9OB&RQ9pj4#<45HtI#o~f{>>O$HM~DZJrRA&8jZ@i_XmgtKE?vvaH2xf~dSkz+ zn(WPDPR*B*p}E{2jdEQWaiOX^U_wx7lo!>Q3F015yaZY9JxegaJjG!ef1m=mM@EL-8bb zFm7xqdk~~X8!UAE5vmcoojLq;-^4CE!WCYZ-!CMyG4APgHv5)s?x3@=S|H)#)s}!_ z!{A8pAG$OzxcZg14fW2P7Xg!UFHw(1dJcpK?O(yEPRnvMc>O6*5#uZ~fffpt8?oHn z-D0hXOVINn6W#q-?*mF~f?a7vHFEK5puU+`-Ne@VBWy#cUz6>}8=b$=+^f5=22f(Av^+ z^LQqPd;k8?rt;3pg_YGY#2i2(puRcZy2Z7+ zy85ovWu}SJcO=$cmy8154|s2lNs4jglKHvmGu1%7xzBXkMaQ31|NR>ffrw+Eb8dSu z6{}B;fU_$jSUOa=uY!N^_3Qf*5)zyiCmZEWZ-(eyyx6o-{WS;)kZf#30tWJ}sgOU* zRgX503!Y(W;N|?2}2uL4Tq~l6`(=gf#4PVvhusZs=vV^<>{=Wh_i;NfeUB+PUsU<_ zcaDD{fh=?9II@jK6wz@Eh|H~1pW3%h%(LEIJ2E^OS+)1AJ^>b^@z=)=H120odyAg;PgWz zjIpTm7P~U>7?MNhM5}rYFJYodZb6pzI8m!w;XmK15y))AwAdlrblZ-m>`GG1Jp4I0 za!z>w!MA!0IdWuuV|Ry0?<+zRyTQekT3N-<=Wy=4M0SMPv&O07)Rr!N91$vKadoQrT4Z-}<`Ju%@mwd_#}`0)ezFprT7 z3b;q)q1n@7r(mv!SP}d#=)yK%?j3%992sfLjqFMNOk&tW4>(NRiDe>wpar@#bEM*? z9wthcvln9Akxi&IDbqeF@|Vs;Z=96nEvXglsVTb4OdvM57$pkKUjt>FIRU8@GBUYT+HgnGW%hHH*4<69z7Y>XL4$d?P zyjt_|kBwJHargM`AoQ<*zX?4)G=7kZx(-DeT|&Vb1xq{L*K90z;+6Lkj!l z^Cczd4tCbke{K{?|6JdKZWy_H6Rnzxxxk(=J6bMsr!(QRH#If&fd&c8e%7wOw5d^H zvL@{Z4!kL{r2TyGjUN+gK3;yU6>Ljp!KwvKb8Ky$ycX<3CPzhc_(W9Y08RQK+Bkb$ z(&B=o8+9jUu|tblScEkR8q?w{y+GA>0&4;Xz>WZw6Jt@zv4#Snp)yXpW5yks^5pIl zE6$Q3$`nwn=w2Q&lCiD5Vpw*6lf=Ssa~Crho-_wi#EUwLIEZ8d|CfHB?+XA>x!sAC>aTvge4=&GAX`g@Dqg zfi)20{$||=yHfo`H;t?H+yUXm$u4wqK?>-@*|>39(lLWS519z^nl9kl!!LWD^1&tH zckIaeZxsHfY%7s2MYR9z*LjUqQAlXIOh}-wbtU`d%R`3O@8|v66>!kFv`Zz$-ZI3N zdr_&3uS6o%c&smAurHrI3G55c7nSgtL`OL?{YZsDqW%^4gOB;sUazG>tJ2$~MLjp6 zmWoz1xuBa@1Oi{ypNGW-r1rRNO$UjL^b_9>!)p^RZ4D_q9XT?*sWdbql}s>blS zg?MRU(yz`fCvoKIB5$)Z$Z%2gGB|)EL|C4#aSR@#+D4I$Ec&|4)|=H_SN95R{VQNP zVuei-QF)}Rioexy3M&`9%4LXB-DE6#QQJ(h`{^5R(@-Cikj`o+aNcnYB9T1X!Fm;BH6mi2g1R;fQ~surt#R#P6?Xo8Nds2B-mp(j!J@ad+5Ds@u0 zASecpqFD$4-#weerVYk7B|POXry#;jX}c(ChT$uMHbUhe7w-r+#$j(|D&nGzpXH|Q zKlIPQ)-3h3@Q}>_AY~YHv5Vja#;M>d!^QNYOBQG^St@<38CAPM_ucv44O@M5vtNAp zYQ$2!l+>*D*lqhWiu7L3U8fYy{$~_2pP8>qN-zz-as7Gl{`Th^_1My0rlW8iZUUn; z2$3;Q0ucReZvkw#_MQopg8e{?YUj5f#Bk_#nu}D^T_q*oF=Js0q??&jWZP0${yviY zkOT|~v|n#)2@BorcIJEE(9h@k54hXY(x;QpU7ra1y^()D%By&vgSbvTs#e6eaY#bm zH+b>4YW@5#Bn?-Kd9aY_(W%7ex|dzi{I2bED-uwUj7F%Z-mY7iS7OEEHCUe<-bTyi z6$~LfVy(r145lw2XSa|{lYC_HQUvX4=RUOKgh~goT>W@?0$2WB8IG>e$+b(^n1O}= zUbVXV=T+=5zQvz?-PZV>JUAQs0tpXaNduGA_)r=mRC;(pwA;ZEN&Y2-K~uif>wB#k Pfmigq`}frDPCoT-681#& literal 37807 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

      I$*iExL zawPK@Yjs1PN=QHnBLe56dN}N)@CewAhy4u4jkBwtb18<0zk61*ci=SV(DuZxW>8pe z3Qu(%KY1^(94#Fd;!)Qexg(D|`gG+zC9=9fU73>j>%|vZj^(Ad912A^pyT|7=?~`5 z`@$LQ9vnyqM^Tf`00o4%jUYXTS{*SmJ9GX#&5IW=U}iu~@|7@UMD5x&GX}2Uhg7kq z;rBqOcZ$&a<^BHsPt^~py@Isw-NHMQjhQ8UT9$%vb~5^U*9&)gJ2Xku~@x$1FA!X5W$1docHD>jkY<)m-$qrKpdhRfKa~oj-s0;PCNU4%+W&AAU7)w{hu6 z_>)snLo>{A`x6c{-`9K&p1n4rKRn%0k3}!PdpIG#?^W>}^JnO({a#ywEXe536Oi|M z!ki>h8z%uardnf6_J3cYt)WGH;aezNT z&mlLQWBFlob5l-;5RC`qb=TP&Zk zN*;CC-DO6xqD+T@nUGhyl_nv{Lft%72>36uEx&96m7h}_;L|1{oFjAj1%>X6m6V(W6Dbq|1QXN#T(gIBT46C?nJ4sQOie2}}p#l|$XbNArQ!zGVG!Ml5BZq#sR z8=xKbw$z25T$^aH82EMRyWyp=CvC2~zkj$@A5T1hcHG%_fwTP<>%uFmB(-M}RY%4s zAI9e=j}G;5;2T%@oTmG&b_d#)k0N9Y<75P4=;OzaQI)&_u;d*(`m%k`gu^-_18IZvKPe1?jSaBPc~wn#02yN1-Ft zt7gn&(yU8MOYM}9+IKZ>+_@ZH{K%G>_r{Z|)wC1qOgc9B?WG~3gROmg;;TMB(gbQY z@Q(p}xWYiPySJBIUd{%?0>d=>rgAbeYJk5j4CALDa8fJuHHx1(Q)gKYh=fw(2A&$( zHL5G!b?e8%W%Jz@gD&YGC|%2?DCsTn$6&@Rx_2-~*#?tu*U==D2T-<6Cp~h@cbVyv z5=+39D%l54$jI+lj%Vaf^YkHfT*`KMR2Px&;eeT~*Q5A9?#KXODxMJjAm!8-|CUA}KU~Vx zg<>Ulv>mt<(+t=+oJDgp08{4Miv#8RTJw#VGMD16M)$P2n2{BwzES0Kn9GN*W7Yn9 zZ&0a)g}s({9UXJ8Wc}o*sadN6x#h+Vv%-FL?#rFpb4(jY(9Jixdtz#u+o-1poiD$; z%OGrhIlU>uX*Q9`alnVS>3WW-@r^Uw4WZm;Er}w8;#33h6wjh6P;3{Yw&x-gY|z)P zJ@MRIe{kc&Wl9K1{{H@ui@_hDj1eZqM6%0LRrxSqS8u*}(UPb>lI=uNw}= z?7EFv$dTf?h9wG$_K$fT!P{@I!rC&oG-L%U7RGhDzVQQ_ir}y5tV8b0wL|E=r?=X& zO=hFt#XWA(3jVYG%Wu8#(U=fRJ`ESjTUYdht&IX;G0Np5-h4rSTgR&ZmG#HTcpZK6 zd*q{_$9)$UM}rV1u|g^e=sICkNbH0Ci5RNUCz^#;%ulUyu =Z*v4X3UvYfmH0_L#JF)w?!{O3< zWhgT8D*#P;>har+=~AL$#%ff3v5wj9oEAC)hHHGm!R~gEn_CIz+dO0P=T({-w7ZjA z%mYhG4lISAoPw6`D@QGUt0L|=xnKB}z4Wcy zB{CI!GcaM*R_5-(RH-Qe`$|nc4f!4C<;%zO;-6$EiI9c{2P@?CHS1MEDXEs3NrKpt z2mHDbvktB*UXou;-%t&rHq<2s=tQxtg(@PL?|4c|+5J)rhzX})5&$hUYYe2~>42Y> zmQNP>+@c{;bW&NBNA)7w&dx3hD<@Nzb&HSqVaQn6sH%nrEkdw4AJz4?Xhaxsk9*Lt z3Q-7+{EfF*TDL7=xV`LJ1@-!c-o8GbOWZ^-qGNqm=*ut_RxK$zfA7nrxt@=wwzhWB zkmIKmqGK>NXTV@#nr4nfRv)YW1=)YWBf6p0$18PwGQeVNnGP-%lG3-Jqpcm#->;uJ zTFNwrR5v`YNioQuRBEmeloDvndlfJ8y7`)3+x9|=$vw1(TD*4r4XNSIPV=s|q*pxl zIb|G%QX2wFGs6Ptio+c=Q-ePqPgQ)FEb+@mA|Si+wmDV#@*&WzYhcXnWE#T&CT^I^LQV)z)IfUKhk8Xq=2;5FgE!T*pAac5$kNP5HY!?^Puq#*xN4HD1QL-VaKDxh< zBw`{K%+bIMW^sE~px@A|e>|DeS1G@K)dmlD={P>DH>_k2V%*oS*GT?2$^SWQ(pLJx zt(y>@qpRBvNez{ZPDaP6@0-o>+C|V#WjucTCn=NZJvWTwm=aW9Ei*|^^0aabbC6`flwDZ!@VhEwHD|mi(}B?|wxdhYC5*zc=F+GKbT1xw4%%q%R{F61iq_St2&wziqR zb#hj%tTB3jmKiHHGgdGOt7i{0b~#kfzDP`@2W43z_n@J=t&N_I zjcs;zwldcYsDLkead2TFTeq3!3yw}$CHg@n|265BvDZJX_XHh6{{(Jf%C~RM3e+b1 z1#2czwaTX}^+!(2e=Y;c(g<^?*xG#bsw%i3%wGR$=?{H;$`Z<}XG!8u_**N$f?PP# zT(lB?WFj-_STDJFjqXC&`nZGRxGl6cwxz3<< zDHFo*!&rw3MVRRnbx|q&v&1H<Gqx1Ph(Cqw=#X$dm<)`6CcvP+$=372b+j3{j;~c^%DtZD4$&P(1*3#YELk?l!>B7H{PE*#yUpiHe9&a&pS6 zIYQaoFg{Mm%+~3&6dvAY!M#2(DW2GKTaT%-6&uRLl$Eg}!cODLlWh#S=`M#( zNdJ_CVWI6w=)JCi?uA=MW_U`Q8_uvzc83*4Isw0YqHwgwJq>Zmy zD)x=A7+?@wS=#M_$!NZPG@HSESn&6_C`T4xABtU5=P#-n9pwPO31Y;s%<~ArOSI-- z#2G3+!i_V8kxihyLLpG3m~(P{7$^NFeUC;exg>5Fum*T|tS}%p&+C2_OPC&dA_|7< zUU7IoX&hKoJy8^~GR5-w_lly|Wy|opR$!q^USC6h^|VZM&@FU-Scy4Bq|Cuf{*Y+E z<&a9~a9)Iy_62X;b+QWv-%=amqbte?=mK~=G$+4=xk29x3xjZh8>9M|BhyKoF*OT* zz$e5M`NwNo<3dTLS8jI!yg$ zdv(k`CA~0X-*Lp{mGtNvvp%7lFWw!B$u-kf#qf-fA`;E(V`F1L#f%ASh&0GB-PqWO z|MlAgEP$dve7OD>_j?c2;Vw&GW8(x?#yGAJdaI58C>Jp;7%z3f=tp-$7Vmx2BmS{0 z+!uUqhUMHFbxVtk{hJyVE>&3r$bI76op2Z}+#aT%aYEzv)cS5haHG6buuFqnWhiY? zqv%;Mw;?tyC%VY;oRD|acpn~Sik|CyQfVr@X|J^elmX{35kNZu^*anGs7dRd})lfUyN>0NAXBq zJhH&<@2Nm{A9er`aKs9w$^tl@E8(~A3Y#79?*_-L@9%HU5vSDKf<^ZUd;sCEI}N&#!qsNrPqAD>;MIkMiPOj&%?u`bMs~pF!?7TUkccwBXw6g z^Z1AmqQ4*Jd^%x{ij7cQWRCHOF3qg>D0qgC@J7=d2juj^my@t@5csH8bIn3V_LWaWy!5gCRJVg@uzeU4xQKr<^mp&VU-4;qpEh+3!^-Y%cfn+{@a1f|I6=^L zZg!yscLOVAiIu6iZd&OI_`ZJq`sd0Suw>;Se>rmLIF;i5?~O!>SA6v3O*wlm3O{Oq z-~n6xRbV4QxC6#Qhd+AYFCLmhiq`7y3yza?AyZUT1afgq?4$i-a;M2|aY=MzkM=!9 zx8oUaKoBP&llbUO4^^O2ID#BaEeH6^W{`mfIs2la!CsOi>BLK)Q}F{uIIr)GPR>=6 zkH}(8(ka`kg=lk_@JZPy)Q@yUl+8iLpdRPHmyG;aCS?*j3Hw+s0Qp_i)d?BWrb!#F zD%dX(DWH4QvcT=B$Oo{ zz;MYGsBm{3h`5w_^oa>E@Bgc0{a;`A-w0t{G~~h;>Crx#BmwFT<-+#f(yv!IiWkI# z-uff#qht`Krt~Iu$qDF#)HA4?y-jpUK6a!v6*4GgYmnVWKs)+P@~h}yLTlUfMwUE9 zWj}C90_I(om`^P|*uX(@WM|Yx2lNNl63T`EYKW z{beP|Wq|9%`0ncgi>v?q%rhvbhvI@kEX{v_vXO`$@nAX%;yNC77^Q*+HR16K`hQ## zfO3u?{VfLtwRp~%_Hlm8zhrs*H2)X`*#n`(@B0{i+RK+wfjj|kta>(L^n8P{ z2Z5CeNy$}GhF{0mW|r3yVJ`q`Sh-l@rybyd^Iy2&u0NeIZRz^%hUU%`d=a*_GE}6c zogKq)>HEpc8o~`j>%!$+bS;)5hlkjX-d-|S)Zw_B`Q6W-(?s6Sibo;Pq&cm}p?gl9Z3 z-)ibyrAYjW!&ZFQkrfgm#P`P<#%svVeov^j!6Nn;KE!hdC$KTi#V^cY7T+9JC7G}u z6(>%gNJeJ8y~8n3fTzk_dG8a%}Qmc^lxKny&c9~I^H zgy1Zp0A_du8QJtBJ3F@@7aWir-yOEkn(+}J#GN33Q6NA4{;10l80PGSz|A<$oGZsk zTm|zNsOqb57gax>?iEWLSX3MUe1^xei zS7)d4*LofyA$kBM-T`Y$#)ygoz69^yiv1?DQ;YAV+|u2AE|^?}5KU5*4l2^7We& zE)&Hcd4p+CWVdOtCFE_NlVaN-xVeexcL_j{DJgKFw zevD5mfd<)y$j1Qs)Alvp55^GfpbYmSBnLz62NfKdD6adnopy-V))pH#awC?N9QG;5 zjn``5%Vhf7hVZieB_<=hKi_RPw|9toot7UPeY(GSRwxV0zHq7DTwP^7dnT=9kEjRUHp#KL8XIK&d From 82055d969689d4772416266e1a08a8b841627172 Mon Sep 17 00:00:00 2001 From: "kortgstation@gmail.com" Date: Sun, 18 Dec 2011 09:31:16 +0000 Subject: [PATCH 09/12] TG UPDATE: Added the Staff of Change gun, a self recharging weapon which cannot be placed in a recharger. It fires bolts of change Added a new projectile "bolt of change." When struck by a bolt of change, a mob will be randomly transformed into one of the following: -Alien (Drone/Sentinel/Hunter) -Metroid (Adult/Baby) -Cyborg -Monkey The staff is admin only as of now. Fixed some bits on the salvage shuttle. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2731 316c924e-a436-60f5-8080-3fe189b3f50e --- code/game/machinery/recharger.dm | 3 ++ .../projectiles/guns/energy/special.dm | 32 +++++++++++++++++++ .../modules/projectiles/projectile/special.dm | 2 -- 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index ccc8bfb2d3b..bfb5c85678b 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -18,6 +18,9 @@ obj/machinery/recharger if (istype(G, /obj/item/weapon/gun/energy/gun/nuclear) || istype(G, /obj/item/weapon/gun/energy/crossbow)) user << "Your gun's recharge port was removed to make room for a miniaturized reactor." return + if (istype(G, /obj/item/weapon/gun/energy/staff)) + user << "It's a wooden staff, not a gun!" + return user.drop_item() G.loc = src src.charging = G diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 45c7d5781eb..c3b345a278c 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -19,3 +19,35 @@ origin_tech = "combat=5;materials=4;powerstorage=3" charge_cost = 100 projectile_type = "/obj/item/projectile/energy/declone" + +obj/item/weapon/gun/energy/staff + name = "staff of change" + desc = "an artefact that spits bolts of coruscating energy which cause the target's very form to reshape itself" + icon = 'gun.dmi' + icon_state = "staff" + item_state = "staff" + fire_sound = 'emitter.ogg' + charge_cost = 200 + projectile_type = "/obj/item/projectile/change" + origin_tech = null + var/charge_tick = 0 + + + New() + ..() + processing_objects.Add(src) + + + Del() + processing_objects.Remove(src) + ..() + + + process() + charge_tick++ + if(charge_tick < 4) return 0 + charge_tick = 0 + if(!power_supply) return 0 + power_supply.give(200) + update_icon() + return 1 \ No newline at end of file diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm index 052c237146d..ae20b7ca630 100644 --- a/code/modules/projectiles/projectile/special.dm +++ b/code/modules/projectiles/projectile/special.dm @@ -23,8 +23,6 @@ explosion(target, -1, 0, 2) return 1 - - /obj/item/projectile/temp name = "freeze beam" icon_state = "ice_2" From ccdf9487958e9870239d5e1a504cc74104f4097b Mon Sep 17 00:00:00 2001 From: "kortgstation@gmail.com" Date: Sun, 18 Dec 2011 16:05:13 +0000 Subject: [PATCH 10/12] TG UPDATES: Hurr durr I'm fucking retarded forgot to check a file last commit. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2733 316c924e-a436-60f5-8080-3fe189b3f50e --- code/modules/projectiles/projectile/change.dm | 152 ++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 code/modules/projectiles/projectile/change.dm diff --git a/code/modules/projectiles/projectile/change.dm b/code/modules/projectiles/projectile/change.dm new file mode 100644 index 00000000000..ac3f03eeda3 --- /dev/null +++ b/code/modules/projectiles/projectile/change.dm @@ -0,0 +1,152 @@ +/obj/item/projectile/change + name = "bolt of change" + icon_state = "ice_1" + damage = 0 + damage_type = BURN + nodamage = 1 + flag = "energy" + + on_hit(var/atom/change) + wabbajack(change) + + + /*Bump(atom/change) + if(istype(change, /mob/living)) + wabbajack(change) + else + del(src)*/ + + + +/obj/item/projectile/change/proc/wabbajack (mob/M as mob in world) + if(istype(M, /mob/living)) + for(var/obj/item/W in M) + M.drop_from_slot(W) + var/randomize = pick("monkey","robot","metroid","alien") + switch(randomize) + if("monkey") + if (M.monkeyizing) + return + M.update_clothing() + M.monkeyizing = 1 + M.canmove = 0 + M.icon = null + M.invisibility = 101 + var/mob/living/carbon/monkey/O = new /mob/living/carbon/monkey( M.loc ) + + O.name = "monkey" + if (M.client) + M.client.mob = O + if(M.mind) + M.mind.transfer_to(O) + O.a_intent = "hurt" + O << "You are now a monkey." + del(M) + return O + if("robot") + if (M.monkeyizing) + return + M.update_clothing() + M.monkeyizing = 1 + M.canmove = 0 + M.icon = null + M.invisibility = 101 + if(M.client) + M.client.screen -= M.hud_used.contents + M.client.screen -= M.hud_used.adding + M.client.screen -= M.hud_used.mon_blo + M.client.screen -= list( M.oxygen, M.throw_icon, M.i_select, M.m_select, M.toxin, M.internals, M.fire, M.hands, M.healths, M.pullin, M.blind, M.flash, M.rest, M.sleep, M.mach ) + M.client.screen -= list( M.zone_sel, M.oxygen, M.throw_icon, M.i_select, M.m_select, M.toxin, M.internals, M.fire, M.hands, M.healths, M.pullin, M.blind, M.flash, M.rest, M.sleep, M.mach ) + + var/mob/living/silicon/robot/O = new /mob/living/silicon/robot( M.loc ) + O.cell = new(O) + O.cell.maxcharge = 7500 + O.cell.charge = 7500 + O.gender = M.gender + O.invisibility = 0 + O.name = "Cyborg" + O.real_name = "Cyborg" + O.lastKnownIP = M.client.address ? M.client.address : null + if (M.mind) + M.mind.transfer_to(O) + if (M.mind.assigned_role == "Cyborg") + M.mind.original = O + else if (M.mind.special_role) O.mind.store_memory("In case you look at this after being borged, the objectives are only here until I find a way to make them not show up for you, as I can't simply delete them without screwing up round-end reporting. --NeoFite") + else + M.mind = new /datum/mind( ) + M.mind.key = M.key + M.mind.current = O + M.mind.original = O + M.mind.transfer_to(O) + + if(!(O.mind in ticker.minds)) + ticker.minds += O.mind//Adds them to regular mind list. + + O.loc = loc + O << "You are playing a Robot. A Robot can interact with most electronic objects in its view point." + O << "You must follow the laws that the AI has. You are the AI's assistant to the station basically." + O << "To use something, simply double-click it." + O << {"Use say ":s to speak to fellow cyborgs and the AI through binary."} + + O.job = "Cyborg" + + O.mmi = new /obj/item/device/mmi(O) + O.mmi.transfer_identity(M)//Does not transfer key/client. + del(M) + return O + if("metroid") + if (M.monkeyizing) + return + M.update_clothing() + M.monkeyizing = 1 + M.canmove = 0 + M.icon = null + M.invisibility = 101 + if(prob(50)) + var/mob/living/carbon/metroid/adult/new_metroid = new /mob/living/carbon/metroid/adult (M.loc) + if (M.client) + M.client.mob = new_metroid + if(M.mind) + M.mind.transfer_to(new_metroid) + + new_metroid.a_intent = "hurt" + new_metroid << "You are now an adult Metroid." + del(M) + return new_metroid + else + var/mob/living/carbon/metroid/new_metroid = new /mob/living/carbon/metroid (M.loc) + if (M.client) + M.client.mob = new_metroid + if(M.mind) + M.mind.transfer_to(new_metroid) + new_metroid.a_intent = "hurt" + new_metroid << "You are now a baby Metroid." + del(M) + return new_metroid + if("alien") + if (M.monkeyizing) + return + M.update_clothing() + M.monkeyizing = 1 + M.canmove = 0 + M.icon = null + M.invisibility = 101 + var/alien_caste = pick("Hunter","Sentinel","Drone") + var/mob/living/carbon/alien/humanoid/new_xeno + switch(alien_caste) + if("Hunter") + new_xeno = new /mob/living/carbon/alien/humanoid/hunter (M.loc) + if("Sentinel") + new_xeno = new /mob/living/carbon/alien/humanoid/sentinel (M.loc) + if("Drone") + new_xeno = new /mob/living/carbon/alien/humanoid/drone (M.loc) + if (M.client) + M.client.mob = new_xeno + if(M.mind) + M.mind.transfer_to(new_xeno) + new_xeno.a_intent = "hurt" + new_xeno << "You are now an alien." + del(M) + return new_xeno + return + From 1fbadaba28df9a46469cacfd96b7c8d902c8b6f6 Mon Sep 17 00:00:00 2001 From: Hawk-v3 Date: Tue, 28 Feb 2012 20:40:15 +0000 Subject: [PATCH 11/12] Please, please check this DME. i *think* it's correct. The Projectile/Change is what I've added, but as to what else it's changed... I don't know what it's for... --- baystation12.dme | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/baystation12.dme b/baystation12.dme index e4c8cc0ca79..9953cacd6e1 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -520,7 +520,7 @@ #include "code\game\machinery\computer\id.dm" #include "code\game\machinery\computer\lockdown.dm" #include "code\game\machinery\computer\medical.dm" -#include "code\game\machinery\computer\operating.dm" +#include "code\game\machinery\computer\Operating.dm" #include "code\game\machinery\computer\power.dm" #include "code\game\machinery\computer\robot.dm" #include "code\game\machinery\computer\security.dm" @@ -1009,6 +1009,7 @@ #include "code\modules\projectiles\guns\projectile\shotgun.dm" #include "code\modules\projectiles\projectile\beams.dm" #include "code\modules\projectiles\projectile\bullets.dm" +#include "code\modules\projectiles\projectile\change.dm" #include "code\modules\projectiles\projectile\energy.dm" #include "code\modules\projectiles\projectile\special.dm" #include "code\modules\recycling\conveyor2.dm" From afbe325e1d2091115f1e72684d2de5dff295fc8d Mon Sep 17 00:00:00 2001 From: SkyMarshal Date: Tue, 28 Feb 2012 13:39:51 -0700 Subject: [PATCH 12/12] Teleporter has a cancel button. Improved the admin player panel. Disposals now work right with things thrown at them. Nuke upgraded to use realtime. --- code/WorkInProgress/Tastyfish/livestock.dm | 10 ++--- code/game/events/Events/PowerOffline.dm | 4 +- code/game/gamemodes/nuclear/nuclearbomb.dm | 35 +++++++++------ code/game/machinery/telecomms/broadcaster.dm | 8 ++-- code/game/machinery/teleporter.dm | 9 ++-- code/game/specops_shuttle.dm | 10 ++--- code/modules/admin/admin.dm | 45 +++++++++++++++++--- code/modules/admin/player_panel.dm | 38 ++++++++++------- code/modules/recycling/disposal.dm | 6 ++- 9 files changed, 112 insertions(+), 53 deletions(-) diff --git a/code/WorkInProgress/Tastyfish/livestock.dm b/code/WorkInProgress/Tastyfish/livestock.dm index f13e5b52918..a88c4f50e9d 100644 --- a/code/WorkInProgress/Tastyfish/livestock.dm +++ b/code/WorkInProgress/Tastyfish/livestock.dm @@ -103,7 +103,7 @@ // Cow /mob/living/simple_animal/livestock/cow - name = "cow" + name = "\improper Cow" icon_state = "cow" icon_living = "cow" icon_dead = "cow_d" @@ -137,7 +137,7 @@ // Chicken /mob/living/simple_animal/livestock/chicken - name = "chicken" + name = "\improper Chicken" icon_state = "chick" icon_living = "chick" icon_dead = "chick_d" @@ -163,7 +163,7 @@ desc = "Tasty!" /obj/structure/closet/critter - desc = "A critter crate." + desc = "\improper Critter crate." name = "Critter Crate" icon = 'storage.dmi' icon_state = "critter" @@ -172,7 +172,7 @@ icon_closed = "critter" /datum/supply_packs/chicken - name = "Chicken crate" + name = "\improper Chicken crate" contains = list("/mob/living/simple_animal/livestock/chicken", "/obj/item/weapon/reagent_containers/food/snacks/grown/corn") cost = 10 @@ -181,7 +181,7 @@ group = "Hydroponics" /datum/supply_packs/cow - name = "Cow crate" + name = "\improper Cow crate" contains = list("/mob/living/simple_animal/livestock/cow", "/obj/item/weapon/reagent_containers/food/snacks/grown/corn") cost = 50 diff --git a/code/game/events/Events/PowerOffline.dm b/code/game/events/Events/PowerOffline.dm index f71d9b4096e..92f4c9e643f 100644 --- a/code/game/events/Events/PowerOffline.dm +++ b/code/game/events/Events/PowerOffline.dm @@ -1,8 +1,10 @@ /datum/event/power_offline + var/list/protected_areas = list(/area/ai_monitored/storage/eva, /area/engine, /area/toxins/xenobiology, /area/turret_protected/ai) + Announce() for(var/obj/machinery/power/apc/a in world) if(!a.crit && a.z == 1) - if(istype(a.area, /area/engine) || istype(a.area, /area/toxins/xenobiology) || istype(a.area, /area/turret_protected/ai)) + if(a.area in protected_areas) continue a.eventoff = 1 a.update() diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 26139859a8a..dcc30eceecc 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -6,7 +6,8 @@ density = 1 var/deployable = 0.0 var/extended = 0.0 - var/timeleft = 60.0 + var/timeleft = 1200 + var/time_actual = 0 var/timing = 0.0 var/r_code = "ADMIN" var/code = "" @@ -22,8 +23,7 @@ /obj/machinery/nuclearbomb/process() if (src.timing) - src.timeleft-- - if (src.timeleft <= 0) + if((time_actual <= world.timeofday) && ((world.timeofday + (time_actual - world.timeofday)) <= 864000) ) explode() for(var/mob/M in viewers(1, src)) if ((M.client && M.machine == src)) @@ -35,18 +35,23 @@ /obj/machinery/nuclearbomb/attack_hand(mob/user as mob) if (src.extended) + var/time_left = time2text(time_actual-world.timeofday, "mm:ss") + if(world.timeofday + (time_actual - world.timeofday) >= 864000) + time_left = time2text(time_actual-(864000 - world.timeofday), "mm:ss") + if(!timing) + time_left = time2text(timeleft, "mm:ss") user.machine = src var/dat = text("Nuclear Fission Explosive
      \nAuth. Disk: []


      ", src, (src.auth ? "++++++++++" : "----------")) if (src.auth) if (src.yes_code) - dat += text("\nStatus: []-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.timing ? "Func/Set" : "Functional"), (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src, src, src, src.timeleft, src, src, (src.safety ? "On" : "Off"), src, (src.anchored ? "Engaged" : "Off"), src) + dat += text("\nStatus: []-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: --- [] +++
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.timing ? "Func/Set" : "Functional"), (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), src, src, src, src, time_left, src, src, src, (src.safety ? "On" : "Off"), src, (src.anchored ? "Engaged" : "Off"), src) else - dat += text("\nStatus: Auth. S2-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \n[] Safety: Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src.timeleft, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) + dat += text("\nStatus: Auth. S2-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \n[] Safety: Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), time_left, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) else if (src.timing) - dat += text("\nStatus: Set-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src.timeleft, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) + dat += text("\nStatus: Set-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), time_left, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) else - dat += text("\nStatus: Auth. S1-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), src.timeleft, (src.timing ? "On" : "Off"), src.timeleft, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) + dat += text("\nStatus: Auth. S1-[]
      \nTimer: []
      \n
      \nTimer: [] Toggle
      \nTime: - - [] + +
      \n
      \nSafety: [] Toggle
      \nAnchor: [] Toggle
      \n", (src.safety ? "Safe" : "Engaged"), time_left, (src.timing ? "On" : "Off"), time_left, (src.safety ? "On" : "Off"), (src.anchored ? "Engaged" : "Off")) var/message = "AUTH" if (src.auth) message = text("[]", src.code) @@ -111,17 +116,22 @@ if (src.yes_code) if (href_list["time"]) var/time = text2num(href_list["time"]) - src.timeleft += time - src.timeleft = min(max(round(src.timeleft), 5), 600) + timeleft = min(max(time + (timeleft/10), 120), 900) * 10 if (href_list["timer"]) - if (src.timing == -1.0) + if (timing == -1.0) return - src.timing = !( src.timing ) - if (src.timing) + timing = !( timing ) + if (timing) + time_actual = world.timeofday + timeleft + if(time_actual >= 864000) + time_actual -= 864000 src.icon_state = "nuclearbomb2" if(!src.safety) bomb_set = 1//There can still be issues with this reseting when there are multiple bombs. Not a big deal tho for Nuke/N else + timeleft = time_actual - world.timeofday + if(timeleft < 0) + timeleft += 864000 src.icon_state = "nuclearbomb1" bomb_set = 0 if (href_list["safety"]) @@ -153,6 +163,7 @@ /obj/machinery/nuclearbomb/proc/explode() if (src.safety) src.timing = 0 + timeleft = 0 return src.timing = -1.0 src.yes_code = 0 diff --git a/code/game/machinery/telecomms/broadcaster.dm b/code/game/machinery/telecomms/broadcaster.dm index 31753036f56..c3ac2943d8c 100644 --- a/code/game/machinery/telecomms/broadcaster.dm +++ b/code/game/machinery/telecomms/broadcaster.dm @@ -394,7 +394,7 @@ var var/J = job var/rendered = "[part_a][N][part_b][quotedmsg][part_c]" for (var/mob/R in heard_masked) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][N] ([J]) [part_b][quotedmsg][part_c]", 2) else R.show_message(rendered, 2) @@ -405,7 +405,7 @@ var var/rendered = "[part_a][M.real_name][part_b][quotedmsg][part_c]" for (var/mob/R in heard_normal) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][realname] ([job]) [part_b][quotedmsg][part_c]", 2) else R.show_message(rendered, 2) @@ -419,7 +419,7 @@ var rendered = "[part_a][vname][part_b][M.voice_message][part_c]" for (var/mob/R in heard_voice) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][vname] ([job]) [part_b][vmessage]][part_c]", 2) else R.show_message(rendered, 2) @@ -435,7 +435,7 @@ var var/rendered = "[part_a][vname][part_b][quotedmsg][part_c]" for (var/mob/R in heard_garbled) - if(istype(R, /mob/living/silicon/ai)) + if(istype(R, /mob/living/silicon/ai) && job != "Automated Announcement") R.show_message("[part_a][vname][part_b][quotedmsg][part_c]", 2) else R.show_message(rendered, 2) diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index 8e33bebe72e..22bac2a5936 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -83,10 +83,11 @@ areaindex[tmpname] = 1 L[tmpname] = I - var/desc = input("Please select a location to lock in.", "Locking Computer") in L - src.locked = L[desc] - for(var/mob/O in hearers(src, null)) - O.show_message("\blue Locked In", 2) + var/desc = input("Please select a location to lock in.", "Locking Computer") in L|null + if(desc) + src.locked = L[desc] + for(var/mob/O in hearers(src, null)) + O.show_message("\blue Locked In", 2) src.add_fingerprint(usr) return diff --git a/code/game/specops_shuttle.dm b/code/game/specops_shuttle.dm index 18838470a1a..b2d73d36ac4 100644 --- a/code/game/specops_shuttle.dm +++ b/code/game/specops_shuttle.dm @@ -232,7 +232,7 @@ var/specops_shuttle_timeleft = 0 if(specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return 0 for(var/obj/machinery/computer/specops_shuttle/S in world) - if(world.time <= S.specops_shuttle_timereset) + if(world.timeofday <= S.specops_shuttle_timereset) return 0 return 1 @@ -286,10 +286,10 @@ var/specops_shuttle_timeleft = 0 if (!specops_can_move()) usr << "\blue Central Command will not allow the Special Operations shuttle to return yet." - if(world.time <= specops_shuttle_timereset) - if (((world.time - specops_shuttle_timereset)/10) > 60) - usr << "\blue [-((world.time - specops_shuttle_timereset)/10)/60] minutes remain!" - usr << "\blue [-(world.time - specops_shuttle_timereset)/10] seconds remain!" + if(world.timeofday <= specops_shuttle_timereset) + if (((world.timeofday - specops_shuttle_timereset)/10) > 60) + usr << "\blue [-((world.timeofday - specops_shuttle_timereset)/10)/60] minutes remain!" + usr << "\blue [-(world.timeofday - specops_shuttle_timereset)/10] seconds remain!" return usr << "\blue The Special Operations shuttle will arrive at Central Command in [(SPECOPS_MOVETIME/10)] seconds." diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 4cb7a48f3ea..8ba9a6c4bcf 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -258,11 +258,16 @@ if ((M.client && M.client.holder && (M.client.holder.level >= src.level))) alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null) return - M << "\red You have been kicked from the server" - log_admin("[key_name(usr)] booted [key_name(M)].") - message_admins("\blue [key_name_admin(usr)] booted [key_name_admin(M)].", 1) - //M.client = null - del(M.client) + switch(alert("Are you sure?", ,"Yes", "NO, WAIT.. DAMMIT! NOT THAT BUTTON!")) + if("Yes") + if(ismob(M)) + M << "\red You have been kicked from the server" + log_admin("[key_name(usr)] booted [key_name(M)].") + message_admins("\blue [key_name_admin(usr)] booted [key_name_admin(M)].", 1) + //M.client = null + del(M.client) + else + src << "Looks like someone already beat you." if (href_list["removejobban"]) if ((src.rank in list("Game Admin", "Game Master" ))) @@ -1759,6 +1764,36 @@ C.files.RefreshResearch() owner:rnd_check_designs() + #define AUTOBANTIME 10 + if(href_list["warn"]) + var/mob/M = locate(href_list["warn"]) + if (ismob(M)) + var/client/user + if(istype(usr, /client)) + user = usr + else if(istype(usr, /mob)) + user = usr.client + + if(!user.holder) + src << "Only administrators may use this command." + return + if(M.client && M.client.holder && (M.client.holder.level >= user.holder.level)) + alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null) + return + if(!M.client.warned) + M << "\red You have been warned by an administrator. This is the only warning you will recieve." + M.client.warned = 1 + message_admins("\blue [user.ckey] warned [M.ckey].") + else + AddBan(M.ckey, M.computer_id, "Autobanning due to previous warn", user.ckey, 1, AUTOBANTIME) + M << "\redYou have been autobanned by [user.ckey]. This is what we in the biz like to call a \"second warning\"." + M << "\red This is a temporary ban; it will automatically be removed in [AUTOBANTIME] minutes." + log_admin("[user.ckey] warned [M.ckey], resulting in a [AUTOBANTIME] minute autoban.") + ban_unban_log_save("[user.ckey] warned [M.ckey], resulting in a [AUTOBANTIME] minute autoban.") + message_admins("\blue [user.ckey] warned [M.ckey], resulting in a [AUTOBANTIME] minute autoban.") + feedback_inc("ban_warn",1) + + del(M.client) ///////////////////////////////////////////////////////////////////////////////////////////////Panels diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index c317f9f7073..3ccc5ff58b1 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -11,6 +11,7 @@ for(var/mob/M in mobs) if(M.ckey) var/color = "#e6e6e6" + i++ if(i%2 == 0) color = "#f2f2f2" var/real = (M.real_name == M.original_name ? M.real_name : "[M.original_name] (as [M.real_name])") @@ -19,26 +20,32 @@ dat += "[M.name] \[[real]\]
      [M.client ? M.client : "No client ([client_key])"] at ([T.x], [T.y], [T.z])" // Adds current name if(isobserver(M)) dat += "Ghost" - if(isalien(M)) + else if(isalien(M)) dat += "Alien" - if(islarva(M)) + else if(islarva(M)) dat += "Alien larva" - if(ishuman(M)) + else if(istajaran(M)) + dat += "Tajaran" + else if(ishuman(M)) dat += "[M.job]" - if(ismetroid(M)) + else if(ismetroid(M)) dat += "Metroid" - if(ismonkey(M)) + else if(ismonkey(M)) dat += "Monkey" - if(isAI(M)) + else if(isAI(M)) dat += "AI" - if(ispAI(M)) + else if(ispAI(M)) dat += "pAI" - if(isrobot(M)) + else if(isrobot(M)) dat += "Cyborg" - if(isanimal(M)) + else if(isanimal(M)) dat += "Animal" - if(iscorgi(M)) + else if(iscorgi(M)) dat += "Corgi" + else if(istype(M,/mob/new_player)) + dat += "New Player" + else + dat += "ERROR" if(M.mind && M.mind.assigned_role && istype(M, /mob/living/carbon/human)) // Adds a column to Player Panel that shows their current job. var/mob/living/carbon/human/H = M @@ -81,13 +88,14 @@ "} dat += {"[player_has_info(M.ckey) ? "Info" : "N/A"] - Boot | Ban | Jobban -
      [muting]
      - PP | + PM | + PP | VV | SM | JMP | - CA + CA
      +
      [muting]
      + Warn | Boot | Ban | Jobban "} switch(is_special_character(M)) @@ -100,7 +108,7 @@ dat += "" - usr << browse(dat, "window=players;size=905x480") + usr << browse(dat, "window=players;size=905x600") //The old one /obj/admins/proc/player_panel_old() diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index aaa19ce3694..cf605048c7e 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -439,8 +439,10 @@ del(H) CanPass(atom/movable/mover, turf/target, height=0, air_group=0) - if (istype(mover,/obj/item) && !istype(mover,/obj/item/weapon/dummy)) + if (istype(mover,/obj/item)) var/obj/item/I = mover + if(!mover.throwing) + return ..() if(prob(75)) I.loc = src for(var/mob/M in viewers(src)) @@ -450,7 +452,7 @@ M.show_message("\the [I] bounces off of \the [src]'s rim!", 3) return 0 else - return ..(mover, target, height, air_group) + return ..() //The toilet does not need to pressurized but can only handle small items. //You can also choke people by dunking them into the toilet.