From cde8e11be5e81dd3e0962441c645f0dd22ae9ef1 Mon Sep 17 00:00:00 2001 From: darkk1138 Date: Sat, 30 Nov 2013 16:54:25 +0100 Subject: [PATCH] grant species_* skills --- src/services/CharacterService.java | 2 ++ src/services/EntertainmentService.java | 3 --- src/services/SkillService.java | 7 +++++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/services/CharacterService.java b/src/services/CharacterService.java index 4d60f425..7717b4bd 100644 --- a/src/services/CharacterService.java +++ b/src/services/CharacterService.java @@ -232,10 +232,12 @@ public class CharacterService implements INetworkDispatch { if (constitution >= 1) core.skillModService.addSkillMod(object, "constitution", (int) constitution); if (stamina >= 1) core.skillModService.addSkillMod(object, "stamina", (int) stamina); if (agility >= 1) core.skillModService.addSkillMod(object, "agility", (int) agility); + object.createTransaction(core.getCreatureODB().getEnvironment()); PlayerObject player = (PlayerObject) core.objectService.createObject("object/player/shared_player.iff", object.getPlanet()); object._add(player); + core.skillService.addSkill(object, "species_" + object.getStfName()); player.setProfession(clientCreateCharacter.getProfession()); player.setProfessionWheelPosition(clientCreateCharacter.getProfessionWheelPosition()); if(clientCreateCharacter.getHairObject().length() > 0) { diff --git a/src/services/EntertainmentService.java b/src/services/EntertainmentService.java index 8d253fde..ee88e386 100644 --- a/src/services/EntertainmentService.java +++ b/src/services/EntertainmentService.java @@ -258,9 +258,6 @@ public class EntertainmentService implements INetworkDispatch { } public boolean canDance(CreatureObject actor, Performance dance) { - for (String x : actor.getAbilities() ) { - System.out.println(x); - } if (actor.hasAbility(dance.getRequiredDance())) { return true; } diff --git a/src/services/SkillService.java b/src/services/SkillService.java index a6cd92c4..e4f970e3 100644 --- a/src/services/SkillService.java +++ b/src/services/SkillService.java @@ -87,6 +87,8 @@ public class SkillService implements INetworkDispatch { String[] schematicsGranted = ((String) skillTable.getObject(s, 23)).split(","); String[] schematicsRevoked = ((String) skillTable.getObject(s, 24)).split(","); + boolean speciesSkill = skill.matches("^species.+$"); + if (isTitle == true) { core.playerService.addPlayerTitle(player, skill); Console.println("Gave skill title: " + skill); @@ -95,8 +97,9 @@ public class SkillService implements INetworkDispatch { if (isProfession) { return; } - - if (godOnly || isHidden) { + + //exempt species skills from being returned -- they're marked godOnly but really meant to be granted + if ((!speciesSkill) && ( godOnly || isHidden)) { return; }