Sistema para controlar o dano dos skills pelo navicat sem precisar reiniciar o server
2 participantes
Página 1 de 1
Sistema para controlar o dano dos skills pelo navicat sem precisar reiniciar o server
Passo 1: Criar uma class
Primeiro você precisa criar uma class, em qualquer lugar do projeto, dando-lhe o nome de SkillsAttack, e adequando o código à namespace da sua source.
OBS: Como o código da nossa class é muito extenso, preferi coloca-lo em um rar que está disponível no final do nosso tutorial.
Passo 2: Program.cs
Essa parte é bem simples. Você só precisa fazer com que a source, ao ligar, reconheça a nossa class SkillsAttack:
O código que possibilita a source fazer isso é o seguinte, e deve ser adicionado na program.cs:
- Código:
MOSTAFA.SkillsAttack.Load();
Vale ressaltar que esse código deve ficar na região certa, junto aos códigos que possuem a mesma função- Fazer com que a source carregue e leia as classes-. Caso você esteja perdido, aperte ctrl+f e pesquise por GuildTable.Load(); e adicione nosso código na linha seguinte.
Passo 3: Adicionar comando para atualizar o gameNessa etapa, precisamos integrar um comando no console, que faça com que o jogo reconheça mudanças feitas na tabela do navicat, caso você as faça.
Para isso, usando ctrl+f, pesquise por "public static void CommandsAI(string command)", vá para o final do bloco ({}) e adicione nosso novo código:
- Código:
case "@skillsattack":
{
//Mostafa Mohamed
//www.Facebook.Com/Dayalamar
SkillsAttack.Load();
break;
}
Passo 4: Criando a tabela no navicat
Vá até a database do navicat, abra o console, e adicione:
- Código:
-- ----------------------------
-- Table structure for skillsattack
-- ----------------------------
DROP TABLE IF EXISTS `skillsattack`;
CREATE TABLE `skillsattack` (
`SkillName` char(255) NOT NULL DEFAULT '0',
`Players` double(255,2) DEFAULT '1.00',
`Monsters` double(255,2) DEFAULT '1.00',
`Poles` double(255,2) DEFAULT '1.00',
PRIMARY KEY (`SkillName`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of skillsattack
-- ----------------------------
INSERT INTO `skillsattack` VALUES ('TwilightDance', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('SuperTwofoldBlade', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('BloodyScythe', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('MortalDrag', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Omnipotence', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('RageofWar', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('BurntFrost', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('SwirlingStorm', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Thundercloud', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Thunderbolt', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('TripleBlasts', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('ShadowofChaser', '0.70', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('AngerofStomper', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('HorrorofStomper', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('PeaceofStomper', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Sector', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Circle', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Rectangle', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('DragonCyclone', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('DragonSlash', '0.70', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('CrackingSwipe', '0.70', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('SplittingSwipe', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('SpeedKick', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('ViolentKick', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('StormKick', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('AirKick', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('RadiantPalm', '0.80', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('WhirlwindKick', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('InfernalEcho', '0.65', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('WrathoftheEmperor', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('WaveofBlood', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('BladeTempest', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('GaleBomb', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('EagleEye', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('FastBlade', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('ScentSword', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Rage', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Hercules', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('FatalCross', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Thunder', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Fire', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Tornado', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('DaggerStorm', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Phoenix', '1.00', '1.00', '1.00');
INSERT INTO `skillsattack` VALUES ('Penetration', '1.00', '1.00', '1.00');
Passo 5: Adequando os skills
Esse passo presume que você saiba como alterar o dano de um skill manualmente na source. Caso não saiba, assista esse vídeo primeiro:
Para submeter qualquer skill a esse sistema há a necessidade de, na linha que cuida do dano, adicionar um codigo que faça referencia ao sistema e a linha do navicat que vamos usar.
Exemplo utilizando um skill que possui mais de um dano:
- Código:
uint damage = Calculate.Melee(attacker, attacked, ref attack, spell);
if (attacked.PlayerFlag == PlayerFlag.Player)
{
damage = (uint)(damage * SkillsAttack.SuperTwofoldBladePlayers);
}
if (attacked.PlayerFlag == PlayerFlag.Monster)
{
damage = (uint)(damage * SkillsAttack.SuperTwofoldBladeMonsters);
}
Ex fastblade:
- Código:
damage = (uint)(damage * SkillsAttack.FastBladePlayers);
Download do sistema: Clique aqui
Re: Sistema para controlar o dano dos skills pelo navicat sem precisar reiniciar o server
ajuda ai mano
kayo- Membro
- Mensagens : 6
Data de inscrição : 30/11/2014
Idade : 27
Localização : Goiânia
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|