Razor70538 Posted September 7, 2016 Posted September 7, 2016 (edited) Hola otra vez :3, el asunto es este: Creé ciertos markers para eventos en un servidor, pero resulta que quiero que esos markers sean utilizables únicamente por dos Teams, ejemplo el team "azul" y el team "rojo", y en cada zona de los equipos hay un marker. ¿Para hacer que el equipo azul sea el unico capaz de usar el marker del equipo rojo necesito un condicional " if "?, ¿Y de ser asi, qué sentencias uso para obtener el nombre del team al que pertenece X jugador y hacer que el team al que pertenece el jugador active las funciones del marker enemigo? Disculpen si uso muchas muletillas xd, un ejemplo claro para explicarme sería: En un server existen 5 teams, pero quiero que de esos 5, 2 sean enemigos (hipotéticamente Army y Terro) y que cada uno de esos dos teams tiene una base, y un marker en cada una. Entonces Army es el único team que puede usar el marker que está en base Terro y análogamente Terro es el único que puede utilizar el marker de base Army, más nadie. ¿Cómo hago para que dichos markers sean utilizables por sus teams contrarios? Edited September 7, 2016 by Razor70538
EstrategiaGTA Posted September 7, 2016 Posted September 7, 2016 Usa getPlayerTeam y getTeamName, por ejemplo: if getTeamName (getPlayerTeam(player)) == "NOMBRE TEAM" then Y ya añades tu código.
Razor70538 Posted September 7, 2016 Author Posted September 7, 2016 No me funciona eso :/, ya me asigné un team desde el panel dentro de mi servidor pero no se ejecuta la función que requiere que el jugador sea del team army, en la consola aparece Bad argument @ 'getPlayerTeam' [Expected player at argument 1, got nil ] No debo crear algo antes del condicional?
EstrategiaGTA Posted September 7, 2016 Posted September 7, 2016 O usa directamente la useful function de la wiki isPlayerInTeam (player, "nombre de team") 1 minute ago, Razor70538 said: No me funciona eso :/, ya me asigné un team desde el panel dentro de mi servidor pero no se ejecuta la función que requiere que el jugador sea del team army, en la consola aparece Bad argument @ 'getPlayerTeam' [Expected player at argument 1, got nil ] No debo crear algo antes del condicional? Eso es que no hay ningún player, postea el código
Razor70538 Posted September 7, 2016 Author Posted September 7, 2016 Lol ya solucioné, no coloqué el parámetro "player" en la función que quiero ejecutar xD, además de que el condicional lo tenía mal escrito, gracias :3 Ahora otra duda, ¿Cómo hago para mostrar un mensaje en el chat con el outputChatBox a un team específico?
EstrategiaGTA Posted September 7, 2016 Posted September 7, 2016 De nada, si quieres utiliza la useful function que te di para abreviar (útil si vas a utilizar esta condición varias veces)
Razor70538 Posted September 7, 2016 Author Posted September 7, 2016 (edited) Ahora otra duda. ¿Cómo hago para mostrarle un mensaje por el outputChatBox a un team en específico? Edited September 7, 2016 by Razor70538
EstrategiaGTA Posted September 7, 2016 Posted September 7, 2016 Usa una for-loop, mira, te hago un código rápido, estoy en el móvil así que no puedo explicar mucho xD: local tName = "Red" --nombre del equipo for _, p in ipairs (getElementsByType("player")) do if getPlayerTeam(p) and getTeamName(getPlayerTeam(p)) == tName then outputChatBox ("Mensaje", p, 255, 0, 0) end end
EstrategiaGTA Posted September 7, 2016 Posted September 7, 2016 De nada. Ya estoy en PC, a ver, mira: local tName = "Red" --nombre del equipo for _, p in ipairs (getElementsByType("player")) do --obtenemos los jugadores y hacemos una loop. if getPlayerTeam(p) and getTeamName(getPlayerTeam(p)) == tName then --para cada player verificamos si tienen equipo, y si ese equipo es el que buscamos. outputChatBox ("Mensaje", p, 255, 0, 0) --se envía el mensaje al player si reúne la condición end end
Razor70538 Posted September 7, 2016 Author Posted September 7, 2016 Ya pude hacer el script completo, funciona hermosamente :') Gracias wn me salvaste
Recommended Posts