mr:shopkeeper_mob
Table of Contents
Shopkeeper Mob - Code References
Java Classes
- Shopkeeper.java - Main Shopkeeper class implementation
- TownShopkeeper.java - Town variant of Shopkeeper
- ImpShopkeeper.java - Imp variant for Last Shop Level
- AzuterronNPC.java - Special NPC extending Shopkeeper
- NPC.java - Base NPC class
- Mob.java - Base Mob class
Java Class Content
package com.watabou.pixeldungeon.actors.mobs.npcs; import com.nyrds.Packable; import com.nyrds.pixeldungeon.game.GameLoop; import com.nyrds.pixeldungeon.items.Treasury; import com.nyrds.pixeldungeon.mechanics.NamedEntityKind; import com.nyrds.pixeldungeon.windows.WndShopOptions; import com.nyrds.util.ModdingBase; import com.watabou.pixeldungeon.Badges; import com.watabou.pixeldungeon.Dungeon; import com.watabou.pixeldungeon.actors.Char; import com.watabou.pixeldungeon.actors.CharUtils; import com.watabou.pixeldungeon.actors.buffs.Regeneration; import com.watabou.pixeldungeon.effects.CellEmitter; import com.watabou.pixeldungeon.effects.particles.ElmoParticle; import com.watabou.pixeldungeon.items.Item; import com.watabou.pixeldungeon.items.bags.Bag; import com.watabou.pixeldungeon.items.food.Food; import com.watabou.pixeldungeon.items.food.OverpricedRation; import com.watabou.pixeldungeon.scenes.GameScene; import com.watabou.pixeldungeon.windows.WndBag; import org.jetbrains.annotations.NotNull; public class Shopkeeper extends NPC { { spriteClass = "spritesDesc/Shopkeeper.json"; movable = false; addImmunity(Regeneration.class); } @Packable public String bagSold = ""; @Override public void damage(int dmg, @NotNull NamedEntityKind src ) { destroy(); getSprite().killAndErase(); CellEmitter.get( getPos() ).burst( ElmoParticle.FACTORY, 6 ); } @Override public boolean reset() { return true; } @Override public boolean interact(final Char hero) { // Shop interaction logic } }
JSON Configuration
- Shopkeeper.json - Sprite configuration
String Resources
<string name="Shopkeeper_Name">shopkeeper</string> <string name="Shopkeeper_Desc">This stout guy looks more appropriate for a trade district in some large city than for a dungeon. His prices explain why he prefers to do business here.</string> <string name="Shopkeeper_text">Welcome to the local Pixel-Mart branch.\nHow can I help you?</string> <string name="Shopkeeper_Buy">Select item to buy</string> <string name="Shopkeeper_Sell">Select an item to sell</string> <string name="Shopkeeper_SellPrompt">I have stuff to sell</string> <string name="Shopkeeper_BuyPrompt">Let see your inventory</string> <string name="Shopkeeper_title">Shop</string>
Lua Scripts
This entity is implemented in Java, no Lua script exists
Usage in Code
- Shop painter creates Shopkeeper in shops: ShopPainter.java#L66
- Registered in MobFactory: MobFactory.java#L262
- Used in WndDontLikeAds: WndDontLikeAds.java#L15
- TownShopLevel creates TownShopkeeper variant: TownShopLevel.java#L94
Related mr Entities
mr/shopkeeper_mob.txt · Last modified: by 127.0.0.1

