Class Pet
java.lang.Object
- All Implemented Interfaces:
Killer
,Cloneable
,Iterable<String>
,Serializable
- Direct Known Subclasses:
BabyDragon
,Cat
,PurpleDragon
A pet is a domestic animal that can be owned by a player. It eats chicken
from the ground. They move faster than sheep.
Pets starve if they are not fed. They can die.
- Author:
- kymara
-
Nested Class Summary
Nested classes/interfaces inherited from class marauroa.common.game.RPObject
RPObject.ID
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
protected int
int
Approximately how much slower he gets hungry if he's full weight.protected int
protected int
protected static int
The amount of hunger that indicates hungry.protected static int
The amount of hunger that indicates starvation.int
The weight at which the pet will stop eating.protected int
Fields inherited from class games.stendhal.server.entity.creature.DomesticAnimal
owner, wasOwned, weight
Fields inherited from class games.stendhal.server.entity.creature.Creature
dropItemInstances, dropsItems, noises
Fields inherited from class games.stendhal.server.entity.npc.NPC
pauseDirection, pauseTurns, pauseTurnsRemaining, SOUND_RADIUS
Fields inherited from class games.stendhal.server.entity.RPEntity
atk, ATTR_TITLE, damageReceived, def, level, lv_cap, ratk, statusAttackers, statusList, totalDamageReceived
Fields inherited from class games.stendhal.server.entity.GuidedEntity
baseSpeed, pathnotifier
Fields inherited from class marauroa.common.game.RPObject
INVALID_ID
-
Constructor Summary
-
Method Summary
Methods inherited from class games.stendhal.server.entity.creature.DomesticAnimal
dropItemsOn, getOwner, getWeight, handleObjectCollision, handleSimpleCollision, isOwnerCallingMe, moveToOwner, setOwner, setWeight, takesPartInCombat, update, wasOwned
Methods inherited from class games.stendhal.server.entity.creature.Creature
addDropItem, addDropItem, addDropItem, attack, clearDropItemList, equip, getAIProfile, getAIProfiles, getAttackStrategy, getAttackTurn, getCorpseDeserver, getCorpseHeight, getCorpseName, getCorpseWidth, getDamageType, getEnemyList, getHarmlessCorpseName, getItemAtk, getItemRatk, getMaxRangeForArcher, getNearestEnemy, getNewInstance, getRangedDamageType, getRespawnPoint, getRespawnTime, getSusceptibility, hasTargetMoved, init, isAbnormal, isAttackable, isAttackTurn, isBoss, isEnemyNear, isPlayingMovementSound, isRare, isSpawned, makeNoise, makeNoiseChance, notifyRegisteredObjects, registerObjectsForNotification, registerObjectsForNotification, setAIProfiles, setAttackStrategy, setBusy, setCorpse, setDamageTypes, setDeathSound, setHealer, setIdle, setMovementSound, setNoises, setRespawned, setRespawnPoint, setSusceptibilities, stopMovementSound, unregisterObjectsForNotification, unregisterObjectsForNotification
Methods inherited from class games.stendhal.server.entity.npc.NPC
checkPause, getIdea, getMovementRange, getPerceptionRange, getSounds, maybeMakeSound, maybeMakeSound, moveRandomly, onFinishedPath, say, setIdea, setMovement, setMovementRange, setPathCompletedPause, setPathCompletedPause, setPerceptionRange, setRandomPathFrom, setSounds, setSounds
Methods inherited from class games.stendhal.server.entity.DressedEntity
getOriginalOutfit, getOutfit, getOutfitColors, isNaked, put, restoreOriginalOutfit, setOutfit, setOutfit, setOutfit, setOutfit, setOutfit, setOutfit, setOutfitColor, setOutfitColor, setOutfitColor, setOutfitColors, setOutfitWithDetail, unsetOutfitColor
Methods inherited from class games.stendhal.server.entity.RPEntity
addAtkXP, addBaseMana, addDefXP, addKarma, addMana, addRatkXP, addStatusAttacker, addXP, applyDefXP, applyDistanceAttackModifiers, canDoRangeAttack, canHit, damage, damageDone, delayedDamage, drop, drop, drop, dropDroppableItem, dropWithInfostring, dropWithInfostring, entityAsOnlinePlayer, entityAsPet, equip, equipOrPutOnGround, equipToInventoryOnly, getAllEquipped, getAllEquippedWithInfostring, getAmmunition, getArmor, getAtk, getAtkXP, getAttackingRPEntities, getAttackRate, getAttackSources, getAttackTarget, getBaseHP, getBaseMana, getBloodClass, getBoots, getCappedAtk, getCappedDef, getCappedRatk, getCloak, getDeathSound, getDef, getDefenseItems, getDefXP, getDescriptionName, getDroppables, getEquippedItemClass, getFirstEquipped, getHelmet, getHP, getItemDef, getKarma, getLanguage, getLegs, getLevel, getLVCap, getMana, getMissileIfNotHoldingOtherWeapon, getName, getNumberOfEquipped, getRangeWeapon, getRatk, getRatkXP, getRing, getsFightXpFrom, getShield, getSlotToEquip, getStatusList, getTitle, getTotalNumberOf, getWeapon, getWeapons, getXP, handleLifesteal, handlePortal, hasArmor, hasBoots, hasCloak, hasHelmet, hasLegs, hasLineOfSight, hasRing, hasShield, hasStatus, heal, heal, heal, incAtkXP, incDefXP, incRatkXP, initHP, isAttacked, isAttacking, isEquipped, isEquipped, isEquippedItemClass, isEquippedItemInSlot, isEquippedWithInfostring, isEquippedWithInfostring, isInvisibleToCreatures, makeCorpse, maybeDropDroppables, onAdded, onDamaged, onDead, onRemoved, rememberAttacker, rewardKillerAnimals, rewardKillers, sendPrivateText, sendPrivateText, setAtk, setAtkInternal, setAtkXP, setBaseHP, setBaseMana, setBlood, setDef, setDefInternal, setDefXP, setHP, setLevel, setLVCap, setMana, setName, setRatk, setRatkInternal, setRatkXP, setRatkXPInternal, setShadowStyle, setTarget, setTitle, setXP, stopAttack, stopAttacking, subXP, updateItemAtkDef, updateLevel, useKarma, useKarma, useKarma
Methods inherited from class games.stendhal.server.entity.GuidedEntity
addSuspend, addSuspend, applyMovement, atMovementRadius, clearPath, followPath, getBaseSpeed, getCollisionAction, getDirectionFromOrigin, getDistanceFromOrigin, getGuide, getPath, getPathPosition, hasPath, isPathLoop, onMoved, onNodeReached, onOutsideMovementRadius, removeSuspend, reroute, retracePath, setBaseSpeed, setCollisionAction, setPath, setPath, setPathAndPosition, setPathPosition, setRandomMovementRadius, setRandomMovementRadius, setRetracePath, setUsesRandomPath, stop, updateModifiedAttributes, usesRandomPath
Methods inherited from class games.stendhal.server.entity.ActiveEntity
canMoveTo, canMoveTo, faceto, faceToward, getDirection, getDirectionToward, getDirectionToward, getResistance, getSpeed, getStepsTaken, handleLeaveZone, ignoresCollision, isFacingToward, isGhost, isMoveCompleted, isZoneChangeAllowed, move, setDirection, setIgnoresCollision, setSpeed, stopped
Methods inherited from class games.stendhal.server.entity.Entity
getAdjacentNodes, getArea, getArea, getCursor, getDescription, getEntitySlot, getHeight, getOrigin, getResistance, getWidth, getX, getY, getZone, hasDescription, isInSight, isObstacle, nextTo, nextTo, notifyWorldAboutChanges, setCursor, setDescription, setEntityClass, setEntitySubclass, setMenu, setPosition, setResistance, setSize, setVisibility, slotIterator, slots, squaredDistance, squaredDistance
Methods inherited from class marauroa.common.game.RPObject
addEvent, addLink, addLink, addMap, addSlot, addSlot, applyDifferences, clearEvents, clearVisible, clone, containsKey, equals, events, eventsIterator, fill, get, getBaseContainer, getBoolean, getContainer, getContainerBaseOwner, getContainerOwner, getContainerSlot, getDifferences, getDouble, getFromSlots, getID, getInt, getLink, getLinkedObject, getMap, getSlot, has, hashCode, hasLink, hasMap, hasSlot, hide, isContained, isEmpty, isHidden, isStorable, maps, put, put, put, put, readObject, remove, removeLink, removeMap, removeSlot, resetAddedAndDeleted, resetAddedAndDeletedMaps, resetAddedAndDeletedRPLink, resetAddedAndDeletedRPSlot, setAddedMaps, setAddedRPSlot, setContainer, setDeletedMaps, setDeletedRPSlot, setID, size, slots, slotsIterator, store, toString, unhide, unstore, writeObject, writeObject, writeToJson
Methods inherited from class marauroa.common.game.SlotOwner
deserializeRPSlots, fill, serializeRPSlots
Methods inherited from class marauroa.common.game.Attributes
add, applyDifferences, get, getBool, getDouble, getInt, getList, getLong, getRPClass, has, instanceOf, iterator, put, put, put, put, readFromMap, remove, resetAddedAndDeletedAttributes, setAddedAttributes, setDeletedAttributes, setRPClass, setRPClass, toAttributeString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
HUNGER_HUNGRY
protected static final int HUNGER_HUNGRYThe amount of hunger that indicates hungry.- See Also:
- Constant Field Values
-
HUNGER_STARVATION
protected static final int HUNGER_STARVATIONThe amount of hunger that indicates starvation.- See Also:
- Constant Field Values
-
MAX_WEIGHT
public final int MAX_WEIGHTThe weight at which the pet will stop eating.- See Also:
- Constant Field Values
-
FAT_FACTOR
public final int FAT_FACTORApproximately how much slower he gets hungry if he's full weight.- See Also:
- Constant Field Values
-
foodName
-
medicineName
-
HP
protected int HP -
ATK
protected int ATK -
DEF
protected int DEF -
XP
protected int XP -
hunger
protected int hunger
-
-
Constructor Details
-
Pet
public Pet()Creates a new wild Pet. -
Pet
Creates a Pet based on an existing pet RPObject, and assigns it to a player.- Parameters:
object
- object containing the data for the Petowner
- The player who should own the pet
-
-
Method Details
-
getFoodNames
-
getMedicineNames
-
generateRPClass
public static void generateRPClass() -
onDead
Is called when the pet dies. Removes the dead pet from the owner. -
logic
public void logic()Determines what the pet shall do next. -
describe
Description copied from class:Entity
Describes the entity (if a players looks at it). -
canGrow
public boolean canGrow()does this pet even have another form? -
grow
public void grow()grow this pet into a new form
-