Move Shop stuff to own package

This commit is contained in:
P0nk
2023-03-30 06:47:07 +02:00
parent 39d759595d
commit 5f0e9a355b
10 changed files with 27 additions and 15 deletions

View File

@@ -73,6 +73,7 @@ import server.partyquest.MonsterCarnival;
import server.partyquest.MonsterCarnivalParty;
import server.partyquest.PartyQuest;
import server.quest.Quest;
import server.shop.Shop;
import tools.*;
import tools.exceptions.NotEnabledException;
import tools.packets.WeddingPackets;

View File

@@ -1,7 +1,10 @@
package client.command;
import database.drop.DropProvider;
import server.ShopFactory;
import server.shop.ShopFactory;
/**
* @author Ponk
*/
public record CommandContext(DropProvider dropProvider, ShopFactory shopFactory) {
}

View File

@@ -4,11 +4,14 @@ import client.command.CommandsExecutor;
import client.processor.action.MakerProcessor;
import client.processor.npc.FredrickProcessor;
import database.drop.DropProvider;
import server.ShopFactory;
import server.shop.ShopFactory;
import service.NoteService;
import java.util.Objects;
/**
* @author Ponk
*/
public record ChannelDependencies(
NoteService noteService, FredrickProcessor fredrickProcessor, MakerProcessor makerProcessor,
DropProvider dropProvider, CommandsExecutor commandsExecutor, ShopFactory shopFactory

View File

@@ -66,13 +66,13 @@ import org.apache.logging.log4j.LogManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import server.CashShop.CashItemFactory;
import server.ShopFactory;
import server.SkillbookInformationProvider;
import server.ThreadManager;
import server.TimerManager;
import server.expeditions.ExpeditionBossLog;
import server.life.PlayerNPCFactory;
import server.quest.Quest;
import server.shop.ShopFactory;
import service.NoteService;
import tools.DatabaseConnection;
import tools.Pair;

View File

@@ -30,10 +30,10 @@ import net.packet.InPacket;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import scripting.npc.NPCScriptManager;
import server.ShopFactory;
import server.life.NPC;
import server.life.PlayerNPC;
import server.maps.MapObject;
import server.shop.ShopFactory;
import tools.PacketCreator;
public final class NPCTalkHandler extends AbstractPacketHandler {

View File

@@ -43,10 +43,10 @@ import net.server.Server;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import server.ItemInformationProvider;
import server.Shop;
import server.ShopFactory;
import server.TimerManager;
import server.maps.*;
import server.shop.Shop;
import server.shop.ShopFactory;
import service.NoteService;
import tools.PacketCreator;
import tools.Pair;

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package server;
package server.shop;
import client.Client;
import client.inventory.InventoryType;
@@ -30,6 +30,7 @@ import constants.id.ItemId;
import constants.inventory.ItemConstants;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import server.ItemInformationProvider;
import tools.PacketCreator;
import java.util.ArrayList;

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package server;
package server.shop;
import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;
@@ -70,15 +70,15 @@ public class ShopFactory {
return Optional.of(new Shop(dbShop.get().id(), dbShop.get().npcId(), fromDbShopItems(items)));
}
private List<server.ShopItem> fromDbShopItems(List<ShopItem> dbItems) {
Stream<server.ShopItem> purchaseableItems = dbItems.stream()
private List<server.shop.ShopItem> fromDbShopItems(List<ShopItem> dbItems) {
Stream<server.shop.ShopItem> purchaseableItems = dbItems.stream()
.map(dbItem -> {
short buyable = ItemConstants.isRechargeable(dbItem.itemId()) ? (short) 1 : MAX_QUANTITY_PER_PURCHASE;
int pitch = dbItem.pitch() == null ? 0 : dbItem.pitch();
return new server.ShopItem(buyable, dbItem.itemId(), dbItem.price(), pitch);
return new server.shop.ShopItem(buyable, dbItem.itemId(), dbItem.price(), pitch);
});
Stream<server.ShopItem> rechargeableItems = rechargeableItemIds.stream()
.map(rechItem -> new server.ShopItem((short) 0, rechItem, 0, 0));
Stream<server.shop.ShopItem> rechargeableItems = rechargeableItemIds.stream()
.map(rechItem -> new server.shop.ShopItem((short) 0, rechItem, 0, 0));
return Stream.concat(purchaseableItems, rechargeableItems).toList();
}

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package server;
package server.shop;
/**
* @author Matze

View File

@@ -62,12 +62,16 @@ import net.server.world.World;
import server.CashShop.CashItem;
import server.CashShop.CashItemFactory;
import server.CashShop.SpecialCashItem;
import server.*;
import server.DueyPackage;
import server.ItemInformationProvider;
import server.MTSItemInfo;
import server.Trade;
import server.events.gm.Snowball;
import server.life.*;
import server.maps.*;
import server.maps.MiniGame.MiniGameResult;
import server.movement.LifeMovementFragment;
import server.shop.ShopItem;
import java.awt.*;
import java.net.InetAddress;