예제 #1
0
파일: Stephen.php 프로젝트: sinfocol/gwf3
 public function onNPCTalk(SR_Player $player, $word, array $args)
 {
     $b = chr(2);
     # bold
     switch ($word) {
         case 'seattle':
             return $this->reply("I'm happy I'm out of there. Delaware is way more awesome.");
         case 'shadowrun':
             return $this->reply("So you are a Runner? Good for you.");
         case 'cyberware':
             return $this->reply("Cyberware? Its awesome. Just remember that enemy spells hurt you a lot with too much cyberware :(");
         case 'magic':
             return $this->reply("Magic sucks. Use cyberware :)");
         case 'hire':
             return $this->reply("Can't hire me. I like my job here, much better than back in Renraku.");
         case 'blackmarket':
             return $this->reply("Shhh! If my boss Andrew hears us he will fire me!");
         case 'bounty':
             return $this->reply("There's no bounty on me, go away!");
         case 'alchemy':
             return $this->reply("Are you from medieval times? There's no such thing as changing stone to gold!");
         case 'invite':
             return $this->reply("A party? It's not in an elevator, so I won't come.");
         case 'renraku':
             return $this->reply("Don't remind me of that, have been bad times.");
         case 'malois':
             return $this->reply("Hmm.. I heard this name before, but I don't remember...");
         case 'bribe':
             if (count($args) === 0) {
                 $this->reply("Please specify an amount to bribe Stephen");
                 return false;
             } else {
                 if (!$player->hasNuyen($args[0])) {
                     return $this->reply("Don't try to fool me, you don't have enough ny");
                 } else {
                     $player->pay($args[0]);
                     return $this->reply("Thanks, but I don't have anything for you.");
                 }
             }
         case 'yes':
             return $this->reply("Yes what? \"Yes sir!\" it is");
         case 'no':
             return $this->reply("...");
         case 'negotiation':
             return $this->reply("That won't work on me.");
         case 'hello':
             return $this->reply("Hello, I'm Stephen.");
         default:
             return $this->reply("I do not know anything about {$word}.");
     }
 }
예제 #2
0
파일: Ninja.php 프로젝트: sinfocol/gwf3
 private function teachNinja(SR_Player $player, $price)
 {
     $p = Shadowfunc::displayNuyen($price);
     if ($player->hasSkill('ninja')) {
         $this->rply('enough');
         // 			$this->reply('Thank you, but you already donated enough :)');
     } elseif ($player->hasNuyen($price)) {
         $player->pay($price);
         $player->levelupFieldTo('ninja', 0);
         // 			$player->updateField('ninja', 0);
         $this->rply('come');
         $player->message($this->langNPC('teaching'));
         // 			$this->reply("Thank you my friend. Come with me...");
         // 			$player->message('The monk teaches you the Ninja Skill. This will improve attack and damage for ninja weapons.');
         $player->modify();
     } else {
         $this->rply('sry', array($p));
         // 			$this->reply("I am sorry, but learning the ninja skill cost $p.");
     }
 }
예제 #3
0
 public function onNPCBountyTalk(SR_Player $player, $word, array $args)
 {
     switch (count($args)) {
         case 1:
             $this->reply("Yes. Try #ttj bounty <player{server}> to see the bounty for a player. Try #ttj bounty <player{server}> <nuyen> to raise the bounty for a player.");
             return true;
         case 2:
             if (false === ($target = Shadowrun4::loadPlayerByName($args[1]))) {
                 $this->reply("This player is unknown. Try #ttj <nickname{serverid}>.");
             } else {
                 $this->reply(SR_Bounty::displayBountyPlayer($target));
             }
             return true;
         case 3:
             if (false === ($target = Shadowrun4::loadPlayerByName($args[1]))) {
                 $this->reply("This player is unknown. Try #ttj <nickname{serverid}>.");
                 return true;
             }
             $nuyen = (int) $args[2];
             $min_nuyen = SR_Bounty::getMinNuyen($target);
             if ($nuyen < $min_nuyen) {
                 $this->reply(sprintf('The minimum bounty for %s is %s.', $target->getName(), Shadowfunc::displayNuyen($min_nuyen)));
                 return true;
             }
             if (false === $player->pay($nuyen)) {
                 $this->reply(sprintf("You don't seem to have %s.", Shadowfunc::displayNuyen($nuyen)));
                 return false;
             }
             if (false === SR_Bounty::insertBounty($player, $target, $nuyen)) {
                 $this->reply(sprintf('Database error in %s line %s.', __FILE__, __LINE__));
                 return false;
             }
             $bounty = Shadowfunc::displayNuyen($nuyen);
             $total = Shadowfunc::displayNuyen($target->getBase('bounty'));
             $target->message(sprintf("%s put a bounty on you: +%s = %s!", $player->getName(), $bounty, $total));
             $this->reply(sprintf('You put a bounty of %s on %s. This is valid for %s. Total bounty for this chummer is %s now.', $bounty, $target->getName(), GWF_TimeConvert::humanDuration(SR_Bounty::TIMEOUT), $total));
             return true;
         default:
             return false;
     }
 }