Comandos#
Dog Walker Job no registra comandos de chat ni de consola. Todo lo que hace un jugador empieza en el dueño de un perro o en el propio perro, y las estadísticas están dentro del panel del perro. Otros scripts acceden a él mediante los exports y eventos de abajo.
Los niveles no se establecen por comando. Para cambiar el nivel de alguien, edita
levelyexperienceen su fila deqs_dog_walkermientras está desconectado. La fila se vuelve a leer de la base de datos cuando regresa.
Exports del cliente#
Para un HUD, un menú radial u otro trabajo que necesite saber qué está haciendo el jugador local.
¿Está el jugador paseando un perro?
local walking = exports['qs-dogwalker']:isWalkingDog() -- true while at least one walk is runningÚtil para bloquear otro trabajo, la aparición de un vehículo o un emote mientras hay un perro con correa.
El nivel del jugador
local level, experience, required = exports['qs-dogwalker']:getPlayerLevel()
-- level current dog walker level
-- experience experience toward the next level
-- required experience the next level needsLas ubicaciones configuradas
local locations = exports['qs-dogwalker']:getLocations() -- Config.Locations, as configured
for id, location in ipairs(locations) do
print(id, location.dog_name, location.owner_name, location.employer_coords)
endÚtil para un mapa, una app del teléfono o un GPS que guíe a los jugadores hasta los dueños.
Actualizar las estadísticas
exports['qs-dogwalker']:openLeaderboard()
-- or by event, from the client or the server
TriggerEvent('qs-dogwalker:openLeaderboard')
TriggerClientEvent('qs-dogwalker:openLeaderboard', source)Obtiene las tres clasificaciones, las cuentas atrás y los últimos ganadores, y los envía a la vista de estadísticas. Esa vista está dentro del panel del perro, así que se ve mientras el jugador tiene el panel abierto.
Exports del servidor#
Cada respuesta viene del propio registro del servidor de quién pasea qué (el mismo registro con el que se pagan los paseos), así que un cliente modificado no puede ni fingir estar en un paseo ni ocultarlo.
IsPlayerOnMission
True mientras el jugador tiene al menos un paseo abierto. Es el nombre que exportan los demás trabajos de Quasar, así que es el que debes usar en una integración nueva.
if exports['qs-dogwalker']:IsPlayerOnMission(source) then
return -- busy walking a dog
endisPlayerOnDuty
La misma pregunta con su nombre antiguo, mantenido para los scripts que ya lo llaman.
local walking = exports['qs-dogwalker']:isPlayerOnDuty(source)getOnDutyCount
Cuántos jugadores están paseando al menos un perro ahora mismo, para un centro de empleo, una pantalla de estadísticas de la ciudad o un marcador.
local walkers = exports['qs-dogwalker']:getOnDutyCount()getPlayerLevel
El nivel de paseador de perros de cualquier jugador, leído de la base de datos la primera vez y guardado en caché después.
local level, experience, required = exports['qs-dogwalker']:getPlayerLevel(source)
if level >= 10 then
-- e.g. unlock a pet shop discount for experienced walkers
endEventos#
Mostrar un mensaje con el estilo del trabajo
Envía una notificación a través del mismo sistema que usa el trabajo: sus propias notificaciones, o tu SendTextMessage cuando Config.DefaultNotifications está desactivado.
-- server side
TriggerClientEvent('qs-dogwalker:sendNotification', source, 'notify', 'success', 'Good job today!')
-- type: 'success' · 'error' · 'warning' · 'info'Sobre los mensajes#
Cuando el servidor se niega a iniciar o pagar un paseo, responde con una clave de traducción en lugar de una frase (DOG_ON_COOLDOWN, NOT_AT_THE_OWNER), así el jugador la lee en su propio idioma. Errores comunes enumera cada clave y lo que significa.



