Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...
  • 0

Question quest et système de vote.


ricou77

Question

Bonjour à tous,Je suis sous les files 2012 avec un serveur dédié.Je vais exposer ma première question: Ayant un peu de mal à regler le mob_drop_item.txt, j'ai décidé de créer une quest pour les drop de mes metin, avec un taux de drop facilement réglable. Mais le seul problème c'est que les "when id_metin.kill begin" ne prend apparament pas sur les metin.Je kill une metin 8040 par exemple, je ne rentre pas dans le when. j'ai fais l'essaie avec un id de mob et tout ce qu'il y avait dans le when ce passe bien. J'ai donc été regardé le système utilisé pour la tour et j'ai donc ajouté une ligne dans mon "questnpc.txt" qui est "8040 metin_100", mon code est devenue:

when metin_100.kill begin     say("Bravo")end

Et là encore rien n'apparait après la destruction de la metin. J'ai remplacé "metin_100" par 101 (id du chien errant) et tout fonctionne.Si quelqu'un pourrai m'éclairer là-dessus....Ma seconde question est: J'ai actuellement un site traduit par Oscar il me semble et il me manque la table pour le système de vote, je vous fourni le script du système vote.

Votez et gagnez des Monneys du cochon  !Votez !<?php if($securite!='JEREMaimelaquequete!numero:0687541251'){exit();}$ip=$_SERVER['REMOTE_ADDR'];$ipbox=gethostbyaddr($ip);if(empty($_GET['vote']) || $_GET['vote']==0){ ?>
Le fait de voter pour NeoCochon nous permet d'augmenter la population du serveur tout en vous récompensant et en vous encourageant à le faire régulièrement!

Comment recevoir les 15 Monneys du cochon ?
C'est très simple, connectez vous au site ensuite il suffit de cliquer sur les logo du "top-site" ci dessous, saisir un code de vérification et le tour est joué !      
Votez sur topmetin.com et root-top.com ensuite gagnez 15 Monneys du cochon  Par vote ! (Toutes les 2Heures)





 

      Merci pour votre soutien, Le staff de NeoCochon.<?php }elseif ($_GET['vote']==1){$temps = time();$temps2h = time() + (120 * 60);//mysql_select_db('$db_account');if($_SESSION['id']!=''){// LA PAGE START HERE$idcompte = $_SESSION['id'];		//recups vars		$vote1 = mysql_query("SELECT * FROM $db_account.site_votes WHERE id='$idcompte'");		$vote1a = mysql_fetch_array($vote1);		$vote1b = mysql_num_rows($vote1);		$vote1nb = mysql_fetch_assoc($vote1);//�a compte la valeur ? faut que jle note ... ^^		$voteallownom = $vote1a['temps1'];		$tempprochvotenom = $voteallownom + (120 * 60);		$verif_double_compte = mysql_query('SELECT * nb FROM account.site_votes WHERE ipbox="'.$ipbox.'"'); //verif si le PC a deja vot�		//$verif_double_compte_nb = mysql_num_rows($verif_double_compte);//si > 1 deja vot� rediriger				$nbvote = $vote1nb['nbvote'];		if($temps > $tempprochvotenom){		//Test si OK pour vote !		$nbvote++;		mysql_query("UPDATE $db_account.account SET cash=cash+15 WHERE $db_account.account.id='$idcompte'");//Vote valid� on add les valeurs > :		mysql_query("DELETE FROM $db_account.site_votes WHERE id =$idcompte");		mysql_query("INSERT INTO $db_account.site_votes VALUES ('$idcompte', '$temps', '$ipbox', '$nbvote')");		mysql_query("UPDATE $db_account.account SET vote=vote+1 WHERE $db_account.account.id='$idcompte'");		?>		    	Vous allez être redigé vers le top-site, une fois le vote effectué, vos 15 Monneys du cochon seront ajoutées!        	       	 <?php		}		else{ ?>		Vous avez déjà voté, prochain vote possible dans  		<?php $nombre = $tempprochvotenom-$temps; //remplacez ici par votre nombre a convertir//initialisation$secondes = 0;$minutes = 0;$heure = 0;//convertion$minutes = $nombre/60; $secondes = bcmod($nombre,"60");$minutes = floor($minutes);while($secondes >= "60") //ajoute une minute toutes les 60 secondes{ $secondes = $secondes-60; $minutes++;}while($minutes >= "60")//ajoute une heure toutes les 60 minutes{ $minutes = $minutes-60; $heure++;}if($minutes < "10") // ajoute le deuxieme 0 pour la présentation{ $minutes = "0".$minutes;}if($secondes < "10") // ajoute le deuxieme 0 pour la présentation{ $secondes = "0".$secondes;}if($heure < "10") // ajoute le deuxieme 0 pour la présentation{ $heure = "0".$heure;}$resultat = $heure.":".$minutes.": min"; //contient le résultat finalecho $resultat; ?>.                 <?php		}}else{?>Vous n'êtes pas connecté, votre compte ne peut être crédité .<?php}} elseif ($_GET['vote']==2){$temps = time();$temps2h = time() + (90 * 60);//mysql_select_db('$db_account');if($_SESSION['id']!=''){// LA PAGE START HERE$idcompte = $_SESSION['id'];		//recups vars		$vote1 = mysql_query("SELECT * FROM $db_account.site_votes_2 WHERE id='$idcompte'");		$vote1a = mysql_fetch_array($vote1);		$vote1b = mysql_num_rows($vote1);		$vote1nb = mysql_fetch_assoc($vote1);//�a compte la valeur ? faut que jle note ... ^^		$voteallownom = $vote1a['temps1'];		$tempprochvotenom = $voteallownom + (90 * 60);		$verif_double_compte = mysql_query('SELECT * nb FROM account.site_votes_2 WHERE ipbox="'.$ipbox.'"'); //verif si le PC a deja vot�		//$verif_double_compte_nb = mysql_num_rows($verif_double_compte);//si > 1 deja vot� rediriger				$nbvote = $vote1nb['nbvote'];		if($temps > $tempprochvotenom){		//Test si OK pour vote !		$nbvote++;		mysql_query("UPDATE $db_account.account SET cash=cash+15 WHERE $db_account.account.id='$idcompte'");//Vote valid� on add les valeurs > :		mysql_query("DELETE FROM $db_account.site_votes_2 WHERE id =$idcompte");		mysql_query("INSERT INTO $db_account.site_votes_2 VALUES ('$idcompte', '$temps', '$ipbox', '$nbvote')");		mysql_query("UPDATE $db_account.account SET vote=vote+1 WHERE $db_account.account.id='$idcompte'");		?>        Vous allez être redigé vers le top-site, une fois le vote effectué, vos 15 Monneys du cochon seront ajoutés!
                <?php		}		else{ ?>		Vous avez déjà voté, prochain vote possible dans  		<?php $nombre = $tempprochvotenom-$temps; //remplacez ici par votre nombre a convertir//initialisation$secondes = 0;$minutes = 0;$heure = 0;//convertion$minutes = $nombre/60; $secondes = bcmod($nombre,"60");$minutes = floor($minutes);while($secondes >= "60") //ajoute une minute toutes les 60 secondes{ $secondes = $secondes-60; $minutes++;}while($minutes >= "60")//ajoute une heure toutes les 60 minutes{ $minutes = $minutes-60; $heure++;}if($minutes < "10") // ajoute le deuxieme 0 pour la présentation{ $minutes = "0".$minutes;}if($secondes < "10") // ajoute le deuxieme 0 pour la présentation{ $secondes = "0".$secondes;}if($heure < "10") // ajoute le deuxieme 0 pour la présentation{ $heure = "0".$heure;}$resultat = $heure.":".$minutes.": min"; //contient le résultat finalecho $resultat; ?>.                 <?php		}}else{?>Vous n'êtes pas connecté, aucun point ne sera ajouté.<?php}}else{?>Erreur, la page n'existe pas, retournez à la page des votes.<?php} ?>

Si quelqu'un pourrait m'aider pour la table, ce serai super!Voilà voilà, merci d'avoir pris le temps de lire mes petits soucis.ricou77.

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 14
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

14 réponses à cette question

Messages recommandés

  • 0

Ayant un peu de mal à regler le mob_drop_item.txt, j'ai décidé de créer une quest pour les drop de mes metin, avec un taux de drop facilement réglable. Mais le seul problème c'est que les "when id_metin.kill begin" ne prend apparament pas sur les metin.

Je kill une metin 8040 par exemple, je ne rentre pas dans le when. j'ai fais l'essaie avec un id de mob et tout ce qu'il y avait dans le when ce passe bien. J'ai donc été regardé le système utilisé pour la tour et j'ai donc ajouté une ligne dans mon "questnpc.txt" qui est "8040 metin_100", mon code est devenue:

 

when metin_100.kill begin
    say("Bravo")
end

 

Et là encore rien n'apparait après la destruction de la metin. J'ai remplacé "metin_100" par 101 (id du chien errant) et tout fonctionne.

Si quelqu'un pourrai m'éclairer là-dessus....

 

 

 

Tu as simplement à créer une quête nommée par exemple "drop_metin.quest" puis d'y mettre:

 

quest dropmetin begin
state start begin
	when 11506.kill begin --Pour ma part c'est l'ID des metin 100 sur mon serveur, remplace donc par l'ID de TA metin 100
		say("Bravo")
	end
end
end

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Ayant un peu de mal à regler le mob_drop_item.txt, j'ai décidé de créer une quest pour les drop de mes metin, avec un taux de drop facilement réglable. Mais le seul problème c'est que les "when id_metin.kill begin" ne prend apparament pas sur les metin.

Je kill une metin 8040 par exemple, je ne rentre pas dans le when. j'ai fais l'essaie avec un id de mob et tout ce qu'il y avait dans le when ce passe bien. J'ai donc été regardé le système utilisé pour la tour et j'ai donc ajouté une ligne dans mon "questnpc.txt" qui est "8040 metin_100", mon code est devenue:

 

when metin_100.kill begin
    say("Bravo")
end

 

Et là encore rien n'apparait après la destruction de la metin. J'ai remplacé "metin_100" par 101 (id du chien errant) et tout fonctionne.

Si quelqu'un pourrai m'éclairer là-dessus....

 

 

 

Tu as simplement à créer une quête nommée par exemple "drop_metin.quest" puis d'y mettre:

 

quest dropmetin begin
state start begin
	when 11506.kill begin --Pour ma part c'est l'ID des metin 100 sur mon serveur, remplace donc par l'ID de TA metin 100
		say("Bravo")
	end
end
end

 

Merci de ta réponse, mais j'ai bien créer un quête complète, le seul hic, c'est que lorsqu'un metin est détruite, on entre pas dans le when de la quête alors que si je remplace l'id de la metin par celui d'un mob, tout fonctionne ...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Pour ta query je ne suis pas sur de la syntaxe, mais ça devrait être ça (ou quelque chose comme ça) :

 

CREATE TABLE site_votes (`id` int(11) NOT NULL DEFAULT '0', `ipbox` varchar(15) NOT NULL DEFAULT '0.0.0.0', PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=1000484 DEFAULT CHARSET=latin1;

 

Cette query ne va créer que deux champs, car je ne connais pas les autres que le script va demander (j'ai pas tellement le temps de chercher dans tout ton script) donc tu pourras créer les autres champs à la main.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Je pense que ta query est incomplète car je peux voter non-stop, je ne vois pas quel colonne il manque par contre :x

 

Sinon si quelqu'un a un script php pour le système de vote rémunéré complet ça serait sympas si il le partageait.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour, merci Satir de tes réponses mais,

 

j'ai créé la table à l'aide ce cette query:

 

CREATE TABLE site_votes (`id` int(11) NOT NULL DEFAULT '0', `ipbox` varchar(15) NOT NULL DEFAULT '0.0.0.0', `vote` int(5) NOT NULL DEFAULT '0', `temps` datetime DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=1000484 DEFAULT CHARSET=latin1;

Mais lorsque je clique sur un logo de topsite, sa remplis bien les cases à l’exception de la case 'temps' qui s'initialise à 0 à chaque fois, du coup on peut voter non-stop....

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Parce que temps est un timestamp et doit figurer au format timestamp dans la bdd.

 

J'ai pas tout compris :x

 

J'ai corrigé ma query, j'ai remis tout dans le bon sens mais j'ai toujours le problème avec la colonne temps qui reste à 0... je remet la query corrigée:

 

CREATE TABLE site_votes (`id` int(11) NOT NULL DEFAULT '0', `temps` datetime DEFAULT NULL, `ipbox` varchar(15) NOT NULL DEFAULT '0.0.0.0', `vote` int(5) NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=1000484 DEFAULT CHARSET=latin1;

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Retraité

Bonsoir,

 

Le sujet contient la balise [glow=#800000][Résolu][/glow] ou reste sans réponse, de ce fait il a été déplacé dans la section "Résolu ou sans réponse".

 

Cordialement.

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.


  • brilliantdiscord_widget
  • Flux d'Activité

    1. 37
    2. 21

      Metin2 en 2020 peut-on en parler?

    3. 0

      METIN2Project

    4. 3

      Ressources - UnPack - Metin2 Client - Officiel

    5. 0

      Barre des tâches d'argent étendue

    6. 16

      Redémarrage automatique des channels

  • En ligne récemment

    • Aucun utilisateur enregistré regarde cette page.

Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.