道具:添加礼包字段
This commit is contained in:
@@ -3,7 +3,7 @@ import { resResult } from '../../../pubUtils/util';
|
|||||||
import { FIRST_GIFT_STATE, STATUS } from '../../../consts';
|
import { FIRST_GIFT_STATE, STATUS } from '../../../consts';
|
||||||
import { getPlayerFirstGiftData } from '../../../services/firstGiftService';
|
import { getPlayerFirstGiftData } from '../../../services/firstGiftService';
|
||||||
import { RoleModel } from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { addReward, stringToRewardParam, useGiftPackage } from '../../../services/giftPackageService';
|
import { addReward, stringToRewardParam } from '../../../services/giftPackageService';
|
||||||
import { ActivityFirstGiftModel } from '../../../db/ActivityFirstGift';
|
import { ActivityFirstGiftModel } from '../../../db/ActivityFirstGift';
|
||||||
|
|
||||||
export default function (app: Application) {
|
export default function (app: Application) {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { Application, BackendSession } from 'pinus';
|
import { Application, BackendSession } from 'pinus';
|
||||||
import { deltaDays, resResult } from '../../../pubUtils/util';
|
import { resResult } from '../../../pubUtils/util';
|
||||||
import { ACTIVITY_TYPE, FIRST_GIFT_STATE, SERVER_OPEN_TIME, STATUS } from '../../../consts';
|
import { ACTIVITY_TYPE, STATUS } from '../../../consts';
|
||||||
import { newPlayerLimitPackageActivity, getPlayerLimitPackageData, limitPackageActivity } from '../../../services/limitPackageService';
|
import { newPlayerLimitPackageActivity, getPlayerLimitPackageData } from '../../../services/limitPackageService';
|
||||||
import { addReward, stringToConsumeParam, stringToRewardParam, useGiftPackage } from '../../../services/giftPackageService';
|
import { addReward, stringToConsumeParam, stringToRewardParam } from '../../../services/giftPackageService';
|
||||||
import { ActivityShopModel } from '../../../db/ActivityShop';
|
import { ActivityShopModel } from '../../../db/ActivityShop';
|
||||||
import moment = require('moment');
|
import moment = require('moment');
|
||||||
import { RoleModel } from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
import { Application, BackendSession } from "pinus";
|
||||||
|
import { STATUS, EQUIP_STRENGTHEN_TYPE, CURRENCY_BY_TYPE, CURRENCY_TYPE, HERO_SYSTEM_TYPE, CONSUME_TYPE, HERO_GROW_MAX, MSG_SOURCE, JEWEL_PUSH_LV, TASK_TYPE } from "../../../consts";
|
||||||
|
import { ItemInter } from "../../../pubUtils/interface";
|
||||||
|
|
||||||
|
import { resResult, parseGoodStr, getRandValueByMinMax, getRandEelm } from "../../../pubUtils/util";
|
||||||
|
import { addItems, handleCost, decreaseItems } from "../../../services/rewardService";
|
||||||
|
import Equip, { EquipModel, EquipType } from "../../../db/Equip";
|
||||||
|
import { HeroModel, EPlace } from "../../../db/Hero";
|
||||||
|
import Role from "../../../db/Role";
|
||||||
|
import { calPlayerCeAndSave } from "../../../services/playerCeService";
|
||||||
|
import { getHeroJob, getGoodById, gameData, getHeroEquipByClassId } from "../../../pubUtils/data";
|
||||||
|
import { EQUIP } from "../../../pubUtils/dicParam";
|
||||||
|
import { ITID, SPEICAL_ITEM, QUALITY_TYPE } from "../../../consts/constModules/itemConst";
|
||||||
|
import { changeEquip, dressEquip, checkMaterialEnough, takeOffEquipAndCalPlayerCe } from "../../../services/equipService";
|
||||||
|
|
||||||
|
import { indexOf, findIndex } from 'underscore';
|
||||||
|
import { pushEquipRefineSucMsg, pushNormalEquipMsg, pushNormalItemMsg } from "../../../services/chatService";
|
||||||
|
import { checkTaskWithHero, checkTaskWithEquip, checkTask, checkTaskWithArgs, checkTaskConditionEquipSuitJewelStage, checkActivityTask } from "../../../services/taskService";
|
||||||
|
import { useGiftPackage } from "../../../services/giftPackageService";
|
||||||
|
|
||||||
|
export default function (app: Application) {
|
||||||
|
return new ItemHandler(app);
|
||||||
|
}
|
||||||
|
|
||||||
|
export class ItemHandler {
|
||||||
|
|
||||||
|
constructor(private app: Application) {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 道具的使用
|
||||||
|
public async useItem(msg: { id: number, selected: Array<number> }, session: BackendSession) {
|
||||||
|
let { id, selected } = msg;
|
||||||
|
const roleId = session.get('roleId');
|
||||||
|
const serverId = session.get('serverId');
|
||||||
|
const sid = session.get('sid');
|
||||||
|
const roleName = session.get('roleName');
|
||||||
|
const funcs = session.get('funcs');
|
||||||
|
|
||||||
|
let consumeResult = await handleCost(roleId, sid, [{ id: id, count: 1 }]);
|
||||||
|
if (!consumeResult) return resResult(STATUS.ACTIVITY_RES_NOT_ENOUGH);
|
||||||
|
|
||||||
|
let dicGoods = gameData.goods.get(id);
|
||||||
|
let giftID = dicGoods.gift;
|
||||||
|
let result = await useGiftPackage(roleId, roleName, sid, serverId, funcs, giftID, selected)
|
||||||
|
|
||||||
|
return resResult(STATUS.SUCCESS, result);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -17,6 +17,7 @@ import { decodeArrayListStr } from '../pubUtils/util';
|
|||||||
* @param sid
|
* @param sid
|
||||||
*/
|
*/
|
||||||
export async function useGiftPackage(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], giftID: number, selected: Array<number> = []) {
|
export async function useGiftPackage(roleId: string, roleName: string, sid: string, serverId: number, funcs: number[], giftID: number, selected: Array<number> = []) {
|
||||||
|
console.log("bbbbbbbb", giftID, selected)
|
||||||
let result = { goods: [], addHeros: [] }
|
let result = { goods: [], addHeros: [] }
|
||||||
let giftPackageData = gameData.giftPackage.get(giftID);
|
let giftPackageData = gameData.giftPackage.get(giftID);
|
||||||
if (!giftPackageData) {
|
if (!giftPackageData) {
|
||||||
|
|||||||
@@ -64,6 +64,8 @@ export interface DicGoods {
|
|||||||
readonly timeLimit: number;
|
readonly timeLimit: number;
|
||||||
// 图片
|
// 图片
|
||||||
readonly image_id: number;
|
readonly image_id: number;
|
||||||
|
// 礼包id
|
||||||
|
readonly gift: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
type KeysEnum<T> = { [P in keyof Required<T>]: true };
|
type KeysEnum<T> = { [P in keyof Required<T>]: true };
|
||||||
@@ -94,7 +96,8 @@ const DicGoodsKeys: KeysEnum<DicGoods> = {
|
|||||||
equipId: true,
|
equipId: true,
|
||||||
condition: true,
|
condition: true,
|
||||||
timeLimit: true,
|
timeLimit: true,
|
||||||
image_id: true
|
image_id: true,
|
||||||
|
gift: true
|
||||||
}
|
}
|
||||||
export const dicJewel = new Map<number, DicGoods>();
|
export const dicJewel = new Map<number, DicGoods>();
|
||||||
export const dicGoods = new Map<number, DicGoods>();
|
export const dicGoods = new Map<number, DicGoods>();
|
||||||
|
|||||||
Reference in New Issue
Block a user