IS:0 Item System. Objetos en Seijyuji - otiasc/Seijyuji-Rest GitHub Wiki
Ahora en Seijyuji Gakuen los usuarios pueden tener objetos y usarlos. El IS introduce las herramientas necesarias para tal acontecimiento.
Converter
class Convertidor de Número a Cadena y viceversa
-
Converter.CONVERSION
constante de conversión -
Converter.LENGTH
constante. Longitud deConverter.CONVERSION
-
Converter.toNumber(_string:str):int
. Convierte una cadena en número_string:str
la cadena a convertir devuelveint
el número convertido -
Converter.toString(_number:int):str
. Convierte un número en cadena_number:int
el número devuelvestr
la cadena convertida
Item
class Cada uno de los ítems que puede tener la Seijyuji Gakuen
-
int
id
identificador de ítem -
str
name
nombre del ítem -
str
description
descripción del ítem -
str
image
URL de la imagen del ítem -
constructor
Item(_id, _name, _description, _image)
HistoryStep
class Registro individual de compra/venta/uso de un item
str action
qué se ha hecho con el item. puede ser get, loseItem item
el item correspondienteint prize
precio de compra/venta
Si se omite, la acción ha sido un regalo/uso/pérdidaint thread
ID del tema en el que ha sucedido la acción
Si se omite, la acción se ha hecho desde administraciónint post
ID del post en el que ha sucedido la acción
Si se omite la acción se ha hecho desde administración
ItemList
extends array
class Matriz con un conjunto de objetos Item
, algunos incluso repetidos
addItem(_item:Item, [_amount:int])
añade uno o varios items a la listaremoveItem(_item:Item, [_amount:int])
elimina uno o varios items de la listagetString()
obtiene la cadena de la matriz
ItemListWithPrize
extends ItemList
class Conjunto de objetos Item
con un precio. El conjunto puede ser de tamaño 1
int prize
precio del conjunto
ShopList
extends array
class Matriz con un conjunto de objetos ItemListWithPrize
addItem(_item:Item, _prize:int, [_amount:int])
añade un item a la lista y le pone un precioaddItemList(_itemList:ItemList, _prize:int, [_amount:int])
añade una lista de items y le pone un precio
HistoryList
extends array
class addHistoryStep(_step:HistoryStep)
añade un nuevo paso efectuadonewFromString(_string:str)
crea una nueva array desde el texto historial
A partir de aquí elementos fuera de la clase
{user_item}
str Almacena un ítem que posee el usuario. La estructura es itemID/amount
itemID
(obligatorio) es el ID del itemamount
(obligatorio) es la cantidad que posee
Campo de usuario objetos
Almacena el conjunto de ítems que posee el usuario. La estructura es {user_item}|{user_item}
{user_item_history}
str Es un registro individual de uso o compra de un objeto por parte del usuario. Estructura: getoruse/itemID/thread/post/[amount]
en donde:
getoruse
(obligatorio) puede serget
ouse
según si el registro se refiere a obtención o usoitemID
(obligatorio) es el ID del item referidothread
ypost
(obligatorios) son los ID de tema y post en los que ha ocurrido la acción Usar 0 en ambos en caso de que la acción haya sido resuelta desde Administración.amount
(opcional) es la cantidad de objetos usados. Si se omite se considera 1
Un script se encarga de transformar esto a un (X)HTML "legible"
itemList
arr Lista constante de todos los ítems que se usarán en el foro. Cada elemento del array es un objeto map
con la siguiente información
- índice de la matriz ID único del ítem
- str
name
(obligatorio): Nombre del objeto - str
description
(obligatorio): Descripción del objeto - str
image
(obligatorio): URL de la imagen del objeto - otros campos que se irán añadiendo
getObject(_user, _object, _amount)
Función Un usuario recibe una determinada cantidad de objetos
- int
_user
id del usuario que va a recibir el objeto - int
_object
id del objeto que va a recibir el usuario - int
_amount
cantidad de objetos que va a recibir el usuario
Solo admin/moderadores pueden ejecutar esta función. Proceso:
- Se obtiene la lista de ítems que posee el usuario
_user
- Se procesa y se añade el nuevo objeto
- Se envía nuevo la lista de ítems