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 } }
<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>
This entity is implemented in Java, no Lua script exists