Étape 10 : Étendue de Ping - Pong
Le script a la table-ping-pong-fonction typique déjà installé, cela signifie que si vous envoyez des ping au client s’exécutant sur le script, il vous enverra un pong retour. Vous pouvez le faire pendant des heures...:-)
Si vous voulez une réaction à des termes différents, que vous devez ajouter quelques instructions if.
Avec quelques mots peu plus, cela peut devenir assez déroutant. Et vous ne pouvez pas combiner des mots ou des commandes. La commande doit être envoyer, comme programmé. Si vous souhaitez envoyez "Ping" au lieu de "ping" rien ne se passerait, parce que ce n’est pas le même mot et le texte du message est comparé avec == à la chaîne « ping ».
Une autre possibilité pour trouver la commande-mots dans le message est de le faire :
--en lua signifie commentaire. Pour les deux lignes ci-dessus, vous peuvent supprimer les commentaires et voir ce qui se passe à l’intérieur de la fonction.
La checkforcommand est appelée dans l’on_msg_receive avec ceci :
Il y a deux tableaux, un pour la commande Envoyer appelé « functionsnamen » et l’autre pour les fonctions du script lua-qui sont appelées dans le cas où une seule commande est trouvée.
Avec le string.lower() nous convertir le commandstringarray [1] en minuscules et comparez-le au functionsnamen. De cette façon il ne fait aucune différence si nous écrivons « Ping » ou « pINg » ou « PiNG » ou quelque chose comme ça.
Vous avez peut-être remarqué qu’il y a le commandstringarray. Il a la fonction suivante : après receiveing un message, le texte intégral est analysé dans ce tableau. De cette façon je peux vérifier si le premier mot du message était « ping » et le second a été quelque chose d’autre et ainsi de suite. Le commandstringarray est un tableau de chaînes. LUA est assez facile avec les types de variable et les types tableau.
Pour faire passer le message dans ce tableau, j’ai écrit cette fonction, qui est évidemment appelée avant checkforcommand :
la boucle est à la recherche d’un espace "" séparant les deux mots et écrit la partstrings dans les index du tableau.