UNPKG

@battle-racing/br-common-lib

Version:

Common library for all Battle Racing Repositorios

30 lines (25 loc) 936 B
import { z } from 'zod'; import { allCommandsConfigSchema } from '../command'; import { damageEffectNameSchema, damageTargetSchema } from '../damage'; import { powerUpNameSchema, powerUpTargetSchema } from './PowerUpAttributes.schema'; export const powerUpCommandSchema = allCommandsConfigSchema; export const powerUpShieldSchema = z.object({ duration: z.number(), }); export const powerUpLevelSchema = z.union([z.literal(1), z.literal(2), z.literal(3), z.literal(4), z.literal(5)]); export const powerUpSchema = z.object({ id: z.string(), name: powerUpNameSchema, imageName: z.string(), description: z.string(), level: powerUpLevelSchema, assignationCommands: z.array(powerUpCommandSchema), activationCommands: z.array(powerUpCommandSchema), shield: powerUpShieldSchema.optional(), networkDamage: z .object({ name: damageEffectNameSchema, target: damageTargetSchema, }) .optional(), });