Aller au contenu
Concours du mois de Juin 2018 : Carte Amazon 15 €
idiots

tutoriel [JAVA] Créer la commande SET (fonctionnel)

Messages recommandés

Tout d'abord je tiens a dire qu'aucun code m'appartient, il appartient à l'équipe d'Ancestra Reloaded, a la base la commande s'apelle ADD (vous pouvez quand même l'appeler SET)

 

Prérequis:

TortoiseSVN, Eclipse, Les sources D'ancestra remake [Voir tuto de Sorbet -->

Contenu Masqué

    Répondez au message pour visualiser le contenu
]

 

 

Après avoir été jusqu'à la fin de l'Etape 5, rendez vous (sur Eclipse) Dans Src/Common/Commands.java !

Allez a la dernière ligne.

 

Enfin , copiez collez ce code : (juste à l'avant dernière ligne)

if(command.equalsIgnoreCase("SET"))
	{
		String choix = infos[1];
		int nbr = 0;

		int add = 0;
		nbr = Integer.parseInt(infos[2]);
		//FIXME
			Personnage target = _perso;

		if(infos.length > 3)//Si un nom de perso est spécifié
		{
			target = World.getPersoByName(infos[3]);
			if(target == null || target.get_fight() != null)
			{
				String str = "Le personnage n'a pas ete trouve ou est en combat";
				SocketManager.GAME_SEND_CONSOLE_MESSAGE_PACKET(_out,str);
				return;
			}
			if(target.get_fight() != null)
			{
				String str = "La cible est en combat";
				SocketManager.GAME_SEND_CONSOLE_MESSAGE_PACKET(_out,str);
				return;
			}
		}
		if(infos[1].equalsIgnoreCase("intelligence") || infos[1].equalsIgnoreCase("intel") || infos[1].equalsIgnoreCase( "i"))
		{
		add = Constants.STATS_ADD_INTE;
		}



		else if(infos[1].equalsIgnoreCase("chance" )|| infos[1].equalsIgnoreCase( "c"))
		{
		add = Constants.STATS_ADD_CHAN;
		}


		else if(infos[1].equalsIgnoreCase("force" )|| infos[1].equalsIgnoreCase( "f"))
		{
		add = Constants.STATS_ADD_FORC;
		}
		else if(infos[1].equalsIgnoreCase("agilite") || infos[1].equalsIgnoreCase( "a"))
		{
		add = Constants.STATS_ADD_AGIL;
		}
		else if(infos[1].equalsIgnoreCase("vitalite" )|| infos[1].equalsIgnoreCase( "v"))
		{
		add = Constants.STATS_ADD_VITA;
		}
		else if(infos[1].equalsIgnoreCase("sagesse" )|| infos[1].equalsIgnoreCase( "s"))
		{
		add = Constants.STATS_ADD_SAGE;
		}
		else if(infos[1].equalsIgnoreCase("pa") || infos[1].equalsIgnoreCase( "ap"))
		{
		add = Constants.STATS_ADD_PA;
		}
		else if(infos[1].equalsIgnoreCase("pm")|| infos[1].equalsIgnoreCase( "mp"))
		{
		add = Constants.STATS_ADD_PM;
		}
		else if(infos[1].equalsIgnoreCase("cc"))
		{
		add = Constants.STATS_ADD_CC;
		}
		else if(infos[1].equalsIgnoreCase("dommage" )|| infos[1].equalsIgnoreCase( "dom"))
		{
		add = Constants.STATS_ADD_DOMA;
		}
		else if(infos[1].equalsIgnoreCase("porte" )|| infos[1].equalsIgnoreCase( "po"))
		{

		target.get_baseStats().addOneStat(Constants.STATS_ADD_PO,nbr);
		}
		else
		{
			SocketManager.GAME_SEND_CONSOLE_MESSAGE_PACKET(_out,"FUCK !"+choix+" ET POUR INFOS "+infos[1]);
		}
		target.get_baseStats().addOneStat(add,nbr);

		SocketManager.GAME_SEND_STATS_PACKET(target);
		SQLManager.SAVE_PERSONNAGE(target,false);
	}	

	}
}

Ensuite, allez sur votre serveur, faites /console puis tapez par exemple

SET vitalite 1

ça vous affichera "commande non reconnue", mais ça marche.

je remercie a nouveau l'equipe d'Ancestra Reloaded, et je ne veux aucune copie de ce tutoriel sur un autre forum.

 

Ah oui, j'oubliais...

Compilez Ancestra Remake, après!

 

[il y a 3 pièces jointes car le code est assez long ^^]

 

NOTE: A chque déconnexion les caractéristiques montées disparaissent.

 

Remarque : Ne fonctionnerait pas sur AR REV 37? (pas sûr)

SCR1.jpg.b189780b01e86a62e303166146a12313.jpg

SCR2.jpg.ccb7989af30af91f11d793d64692341e.jpg

SCR3.jpg.e9ad6313888ac4f07b2d5fb9eed44377.jpg

Partager ce message


Lien à poster
Partager sur d’autres sites

Il n'y a rien sur le GameThread depuis la REV 35, et ça marche chez moi "même si ça affiche Commande non reconnue"...

 

On voit bien sur mon screen que c'est la dernière ligne, non?

Partager ce message


Lien à poster
Partager sur d’autres sites

C'était pas codé comme ça dans reloaded. C'est un des trucs que j'ai refait parce que c'était vraiment trop gerbant et j'avais fait une méthode getStatIdByName

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×

Information importante

By using this site, you agree to our Conditions d’utilisation.