♫ in the jungle, the mighty jungle, the lion sleeps tonight ♫
Olá a todos, como vão? Gostaria de tirar essa "pulga atrás da orelha" que está me incomodando a tempos.
Como alguns sabem, há alguns plugins que utilizam alguns parâmetros dentro deles que usam Struct para armazenar multiplos valores consigo. Como por exemplo o plugin do Yanfly: Quest Journal.
Veja as imagens abaixo, por exemplo:
É muito bom organizar esses parâmetros para utilizar no código depois. Porém eu queria entender como o script é feito.
Eu fui procurar no código fonte deste plugin pra dar uma estudada, mas não entendo algumas coisas por serem bem confusas:
Veja este script do mesmo plugin citado:
Tudo bem se algumas linhas do código não terem nada a ver com o sistema de armazenamento dos parâmetros.
Com base este código, queria criar minha própria lista em formato Struct, mas não sei como funciona. Como faço pra armazenar TODOS OS DADOS dessa lista ordenada de parâmetros?
Para entender melhor:
Vamos supor que eu tenho uma lista de parâmetros com uma Struct chamada Format.
Os parâmetros que a possui são:
Janela 1
Janela 2
Janela 3
Janela 4
Janela 5
...
Janela 98
Janela 99
Janela 100
E a Struct dos parâmetros acima tenham as seguintes informações:
Coordenada X
Coordenada Y
Largura
Opacidade
Origem
Alguém pode me explicar a como pegar todas essas informações em código? Como demonstrado nas imagens do plugin do Yanfly.
Soube que o uso do código For é essencial pra esse caso. Então será mais fácil usá-la pra armazenar todos os dados dos parâmetros e seus conteúdos.
P.S.: Já tenho conhecimento do básico da formação dos parâmetros em um plugin. Como @param, @type struct<Nome da Struct>, @default, @desc, etc.
Vou esperar aqui... sentado...assistindo séries da Netflix, enquanto isso...
~ Abraços!
Até mais!
Como alguns sabem, há alguns plugins que utilizam alguns parâmetros dentro deles que usam Struct para armazenar multiplos valores consigo. Como por exemplo o plugin do Yanfly: Quest Journal.
Veja as imagens abaixo, por exemplo:
É muito bom organizar esses parâmetros para utilizar no código depois. Porém eu queria entender como o script é feito.
Eu fui procurar no código fonte deste plugin pra dar uma estudada, mas não entendo algumas coisas por serem bem confusas:
Veja este script do mesmo plugin citado:
Código:
DataManager.questDatabaseAdd = function(id, data) {
if (!data) return $dataQuests.push(null);
data = this.questDataFailsafe(id, data);
var visibleObjectives = JSON.parse(data['Visible Objectives']);
for (var i = 0; i < visibleObjectives.length; ++i) {
visibleObjectives[i] = parseInt(visibleObjectives[i]);
};
var visibleRewards = JSON.parse(data['Visible Rewards']);
for (var i = 0; i < visibleRewards.length; ++i) {
visibleRewards[i] = parseInt(visibleRewards[i]);
};
var description = JSON.parse(data['Description']);
description.unshift('');
var objectives = JSON.parse(data['Objectives List']);
objectives.unshift('');
var rewards = JSON.parse(data['Rewards List']);
rewards.unshift('');
var subtext = JSON.parse(data['Subtext']);
subtext.unshift('');
var type = data['Type'];
type = type.replace(/\\I\[(\d+)\]/gi, '').trim();
type = type.replace(/\\C\[(\d+)\]/gi, '').trim();
var quest = {
name: data['Title'],
id: id,
type: type,
difficulty: data['Difficulty'],
from: data['From'],
location: data['Location'],
description: description,
objectives: objectives,
visibleObjectives: visibleObjectives,
rewards: rewards,
visibleRewards: visibleRewards,
subtext: subtext,
note: ''
};
$dataQuests[id] = quest;
Yanfly.Quest.totalCount += 1;
};
Tudo bem se algumas linhas do código não terem nada a ver com o sistema de armazenamento dos parâmetros.
Com base este código, queria criar minha própria lista em formato Struct, mas não sei como funciona. Como faço pra armazenar TODOS OS DADOS dessa lista ordenada de parâmetros?
Para entender melhor:
Vamos supor que eu tenho uma lista de parâmetros com uma Struct chamada Format.
Os parâmetros que a possui são:
Janela 1
Janela 2
Janela 3
Janela 4
Janela 5
...
Janela 98
Janela 99
Janela 100
E a Struct dos parâmetros acima tenham as seguintes informações:
Coordenada X
Coordenada Y
Largura
Opacidade
Origem
Alguém pode me explicar a como pegar todas essas informações em código? Como demonstrado nas imagens do plugin do Yanfly.
Soube que o uso do código For é essencial pra esse caso. Então será mais fácil usá-la pra armazenar todos os dados dos parâmetros e seus conteúdos.
P.S.: Já tenho conhecimento do básico da formação dos parâmetros em um plugin. Como @param, @type struct<Nome da Struct>, @default, @desc, etc.
Vou esperar aqui... sentado...
~ Abraços!
Até mais!