| Give.java |
1 /*
2 * CVS: $Id: Give.java,v 1.6 2004/07/25 21:40:55 marcus Exp $
3 *
4 * This file is part of JZuul.
5 *
6 * JZuul is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * JZuul is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with Zuul; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 *
20 * Copyrigth 2004 by marcus, leh
21 *
22 */
23
24package org.jzuul.engine.commands;
25
26import java.text.MessageFormat;
27
28import org.jzuul.engine.*;
29import org.jzuul.engine.Character;
30import org.jzuul.engine.GameObject;
31import org.jzuul.engine.Engine;
32
33
34/**
35 *
36 */
37public class Give extends Command {
38 /**
39 *
40 */
41 public Give() {
42 super();
43 this.name = "give"; //$NON-NLS-1$
44 this.arguments = 3;
45 this.desc = Messages.getString("GIVE_HELP"); //$NON-NLS-1$
46 }
47
48 protected boolean action() {
49 String objName = args[0];
50 String charName = args[2];
51 Object[] formatArgs = { objName, charName };
52 GameObject obj = player.findGameObject(objName);
53 if (obj == null) return false;
54 this.objectName = obj.getName();
55 Character npc;
56 GameObject NPCobj = player.findGameObject(charName);
57 if (NPCobj==null) return false;
58 if (!(NPCobj instanceof Character)) {
59 player.say(MessageFormat.format(Messages.getString("GIVE_ERROR"),formatArgs)); //$NON-NLS-1$
60 return false;
61 } else {
62 npc = (Character)NPCobj;
63 }
64 return npc.take(obj);
65 }
66
67 public void help() {
68 super.help();
69 Engine.gui.println(Messages.getString("GIVE_HELP_USAGE")); //$NON-NLS-1$
70
71 }
72
73}
74
75