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
FieldsModifier and TypeFieldDescriptionprotected intprotected intfinal intApproximately how much slower he gets hungry if he's full weight.protected intprotected intprotected static final intThe amount of hunger that indicates hungry.protected static final intThe amount of hunger that indicates starvation.final intThe weight at which the pet will stop eating.protected intFields inherited from class games.stendhal.server.entity.creature.DomesticAnimal
owner, wasOwned, weightFields inherited from class games.stendhal.server.entity.creature.Creature
dropItemInstances, dropsItems, noisesFields inherited from class games.stendhal.server.entity.npc.NPC
pauseDirection, pauseTurns, pauseTurnsRemaining, SOUND_RADIUSFields inherited from class games.stendhal.server.entity.RPEntity
atk, ATTR_TITLE, damageReceived, def, HIT_CHANCE_MULTIPLIER, level, lv_cap, ratk, statusAttackers, statusList, totalDamageReceivedFields inherited from class games.stendhal.server.entity.CombatEntity
enemiesThatGiveFightXP, RPCLASS_NAMEFields inherited from class games.stendhal.server.entity.GuidedEntity
baseSpeed, pathnotifierFields inherited from class marauroa.common.game.RPObject
INVALID_ID -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class games.stendhal.server.entity.creature.DomesticAnimal
dropItemsOn, getOwner, getWeight, handleObjectCollision, handleSimpleCollision, isOwnerCallingMe, moveToOwner, setOwner, setWeight, takesPartInCombat, update, wasOwnedMethods 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, unregisterObjectsForNotificationMethods inherited from class games.stendhal.server.entity.npc.NPC
checkPause, getIdea, getMovementRange, getPerceptionRange, getSounds, maybeMakeSound, maybeMakeSound, moveRandomly, onFinishedPath, say, say, setIdea, setMovement, setMovementRange, setPathCompletedPause, setPathCompletedPause, setPerceptionRange, setRandomPathFrom, setSounds, setSoundsMethods inherited from class games.stendhal.server.entity.DressedEntity
clearColors, getColorableLayers, getOriginalOutfit, getOutfit, getOutfitColor, getOutfitColors, isNaked, put, restoreOriginalOutfit, setOutfit, setOutfit, setOutfit, setOutfit, setOutfit, setOutfit, setOutfitColor, setOutfitColor, setOutfitColor, setOutfitColors, setOutfitWithDetail, storeOriginalOutfit, unsetOutfitColorMethods inherited from class games.stendhal.server.entity.RPEntity
addAtkXP, addBaseMana, addDefXP, addKarma, addMana, addRatkXP, addStatusAttacker, addXP, applyDistanceAttackModifiers, calculateRiskForCanHit, canDoRangeAttack, canHit, damage, damageDone, damageDone, delayedDamage, drop, drop, drop, dropDroppableItem, dropWithItemdata, dropWithItemdata, entityAsOnlinePlayer, entityAsPet, equip, equipOrPutOnGround, equipToInventoryOnly, getAllEquipped, getAllEquippedWithItemdata, getAllStatusAttackers, 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, 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, isEquippedWithItemdata, isEquippedWithItemdata, isInvisibleToCreatures, makeCorpse, maybeDropDroppables, onAdded, onDamaged, onDead, onRejectedAttackStart, onRemoved, rememberAttacker, rewardKillerAnimals, rewardKillers, sendPrivateText, sendPrivateText, 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, useKarmaMethods inherited from class games.stendhal.server.entity.CombatEntity
getsAtkXpFrom, getsDefXpFrom, recentlyDamagedByMethods 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, usesRandomPathMethods 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, stoppedMethods 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, squaredDistanceMethods 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, writeToJsonMethods inherited from class marauroa.common.game.SlotOwner
deserializeRPSlots, fill, serializeRPSlotsMethods 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, toAttributeStringMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods 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:
-
HUNGER_STARVATION
protected static final int HUNGER_STARVATIONThe amount of hunger that indicates starvation.- See Also:
-
MAX_WEIGHT
public final int MAX_WEIGHTThe weight at which the pet will stop eating.- See Also:
-
FAT_FACTOR
public final int FAT_FACTORApproximately how much slower he gets hungry if he's full weight.- See Also:
-
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:EntityDescribes 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
-