[Include] Marcas de Objetivo
#1

• Marcas de Objetivo
Apуs olhar em algumas fotos do tуpico ''10 years of samp'' (10 anos de samp), encontrei isso: http://sa-mp.com/stuff/samphistory/sml_samp4.jpg. Pelo que eu sei, essas marcas de objetivo foram removidas, entгo eu pensei ''Por que nгo trazк las de volta?"
• Vнdeo
Clique aqui.
• Funзхes
Atuais:
CreateObjectiveMarker(playerid, color= -55, time = 0) //Vai ativar a marca de objetivo em algum jogador. O formato da cor deve ser RGBA. Se vocк ignorar o parвmetro ''color'', a cor do jogador vai ser usada na marca de objetivo, e nгo й necessбrio incluir o parвmetro "tempo" se a marca for permanente (O tempo dever ser em MS se for usar).

DestroyObjectiveMarker(playerid) //Como o prуprio nome diz, vai remover a marca de um jogador.

IsValidMarker(playerid) //Vai retornar 1 se o jogador tiver uma marca, caso contrбrio 0.
Novas funзхes [03/04/2017]:
CreateObjectiveMarkerForPlayer(playerid, attachid, color= -55, time = 0) //playerid й para quem a marca vai ser criada, e attachid em quem a marca vai ser ligada/grudada. Se o parвmetro ''color'' nгo for usado, a cor do jogador que vai ter o objeto ligado/grudado (attachid) vai ser usada na marca de objetivo.

DestroyObjectiveMarkerForPlayer(playerid, attachid) //Vai destruir/remover a marca criada para o playerid que estб ligada ao attachid.

IsValidPlayerMarker(playerid, attachid) //Vai retornar 1 se a marca criada para o playerid estiver ligada a attachid, caso contrбrio 0.

CreateObjectiveMarkerGroup(id, marker_color) //Vai criar um grupo, o limite й 100 ids, e pode ser mudado na include (#define OM_MAX_GROUPS)

DestroyObjectiveMarkerGroup(id) //Vai destruir um grupo, e removerб os jogadores que estiverem nele.

AddPlayerToObjectiveGroup(playerid, group_id) //Vai adicionar um jogador em um grupo.

RemovePlayerFromObjectiveGroup(playerid) //Vai remover um jogador do grupo adicionado.

CreateObjectiveMarkerForGroup(groupid, attachid, color= -55, time = 0) //Funciona da mesma maneira que funciona as marcas por jogador, mas para um grupo inteiro.

DestroyObjectiveMarkerForGroup(groupid, attachid) //Vai remover/destruir a marca para um grupo que estб ligada/grudada em um jogador.

Obs: Nгo use funзхes globais em marcas por-jogador, como usar CreateObjectiveMarker e depois tentar destruir/remover com DestroyObjectiveMarkerForPlayer. Use as funзхes globais apenas com marcas globais, o mesmo serve para marcas por jogador.

A partir dessa atualizaзгo, o uso do plugin YSF й necessбrio independente de usar streamer ou nгo, entгo deixe o plugin na sua pasta de plugins, e deixe a include do plugin antes da include de marcas de objetivo. Tambйm certifique-se de que o plugin YSF й o ultimo ou vem depois do streamer no server.cfg, ou vocк receberб o seguinte erro no console: ''AttachPlayerObjectToPlayer : removed in 0.3. I can only attach global objects.''.

• Uso de streamer
O uso de streamer й opcional e desativado por padrгo, para ativar, basta mudar OM_USAR_STREAMER (false) para true. Se for usar streamer, leia abaixo:

-A include do streamer deve vir antes da include de objetivos de marcas, e vocк vai precisar do plugin YSF tambйm (https://sampforum.blast.hk/showthread.php?tid=513499), por que o streamer exige dele para fazer uso da native AttachDynamicObjectToPlayer, e lembre de colocar o plugin como o ultimo, ou vocк receberб um erro no console: ''AttachPlayerObjectToPlayer : removed in 0.3. I can only attach global objects.''.
• Uso de foreach
O uso de foreach estб desativado por padrгo, basta mudar OM_USAR_FOREACH para true. Certifique-se de que a include do foreach/Y_Iterate vem antes da include de marcas de objetivo.
• Por que AttachObjectToPlayer?
Diferente de SetPlayerAttachedObject, o objeto nгo fica balanзando de acordo com a parte do corpo do jogador em que estб ligado, e tambйm nгo interfere nas slots de SetPlayerAttachedObject, sendo perfeito para include.
• Download
Pastebin [Atualizado ultimamente em: 03/04/2017]
Mediafire [Atualizado ultimamente em: 03/04/2017]
Reply
#2

Bacana, pena que removeram essa funзгo para os players, somente os veнculos possuem uma funзгo nativa para colocar os markers. isso ai й уtimo para mini games ou mini missions onde se tem que destacar um player
Reply
#3

Sugestгo:
  • Marcar O Player para tal Player
  • Flash Color
  • Flash Color Para o Player
  • Grupos
Reply
#4

Nossa eu tavo procurando um FS mais ou menos assim e achei essa Include parabens
Reply
#5

Bom, me pareceu desnecessбrio uma include para isso.. jб que pode usar o Attach + id do objeto

ai vi dentro da include.. e me pareceu mais um cуdigo ъtil..
do mais.. Уtimo trabalho e iniciativa!
Reply
#6

Bem interessante cara. Dб pra melhorar isso aн adicionando algumas funзхes de player-player, usar a cor do jogador caso nenhuma seja passada na funзгo e programar em portuguкs й muito ruim.
Reply
#7

Quote:
Originally Posted by renatog
Посмотреть сообщение
Bem interessante cara. Dб pra melhorar isso aн adicionando algumas funзхes de player-player, usar a cor do jogador caso nenhuma seja passada na funзгo e programar em portuguкs й muito ruim.
Atualizado, e agora as funзхes estгo em Inglкs.
Reply
#8

Caraca velho, mano boa iniciativa parabйns
Reply
#9

Bom trabalho, de grande utilidade sua include, o cуdigo tambйm estб excelente.

Como muitos jб sugeriram, algumas incrementaзхes seriam bem-vindas:
Quote:
Originally Posted by RazorGuigo
Посмотреть сообщение
Sugestгo:
  • Marcar O Player para tal Player
  • Flash Color
  • Flash Color Para o Player
  • Grupos
Reply
#10

Quote:
  • Marcar O Player para tal Player
Jб fiz a algumas horas atrбs, mesmo assim vou fazer mais funзхes por jogador.

Quote:
  • Grupos
Quote:
CreateObjectiveMarkerGroup(id, marker_color) //Vai criar um grupo, o limite й 100 ids, e pode ser mudado na include (#define OM_MAX_GROUPS)

DestroyObjectiveMarkerGroup(id) //Vai destruir um grupo, e removerб os jogadores que estiverem nele.

AddPlayerToObjectiveGroup(playerid, group_id) //Vai adicionar um jogador em um grupo.

RemovePlayerFromObjectiveGroup(playerid) //Vai remover um jogador do grupo adicionado.

CreateObjectiveMarkerForGroup(groupid, attachid, color= -55, time = 0) //Funciona da mesma maneira que funciona as marcas por jogador, mas para um grupo inteiro.

DestroyObjectiveMarkerForGroup(groupid, attachid) //Vai remover/destruir a marca para um grupo que estб ligada/grudada em um jogador.

Assim como tambйm vou fazer mais funзхes para grupos, nгo terminei.
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)