SA-MP Forums Archive
[Pedido] Sistema de alugar carro por dias - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Pedido] Sistema de alugar carro por dias (/showthread.php?tid=568583)



Sistema de alugar carro por dias - Danilo_Grut - 23.03.2015

Salve galera,

Estou precisando de um sisteminha que assim em que o lider de uma organizaзгo digite /alugarcarrosorg, todos os carros da mesma spawnem na HQ, e que apуs 7 dias o lider tenha que alugar novamente.

PS: Uso o GF como base.


Re: Sistema de alugar carro por dias - zSuYaNw - 23.03.2015

Da uma olhada neste tуpico em inglкs que fala sobre TIMESTAMP.
https://sampforum.blast.hk/showthread.php?tid=254915

Use algum sistema de salvamento para armazenar as Datas/horas.


Re: Sistema de alugar carro por dias - Danilo_Grut - 24.03.2015

Desculpe,

Mas muito complexo e p melhorar em inglкs, serб que nгo existe nenhum em pt?


Re: Sistema de alugar carro por dias - Ever_SH - 24.03.2015

Quote:
Originally Posted by Danilo_Grut
Посмотреть сообщение
Desculpe,

Mas muito complexo e p melhorar em inglкs, serб que nгo existe nenhum em pt?
Utilize o ****** Tradutor amigo, e nгo й tгo difнcil.


Re: Sistema de alugar carro por dias - n0minal - 24.03.2015

Vou te dar uma base pro seu timestamp e vocк se vira com salvamento:

Uma macro que me ajuda bastante:

Quote:

#define DaysToSeconds(%0) (%0 * 86400)

Й basicamente um conversor de dias pra segundos, vocк jб vai ver porque vai ter que usar isso:

Passo-a-passo:

1-Lembre-se sempre: pra pegar a data e hora atual que o player alugou o carro (em UNIX_TIMESTAMP), pra isso usa-se a funзгo :

Код:
gettime();
2-Jб temos a data atual, agora como adcionar a quantidade de dias que eu quero pra formar a data que o carro vai expirar?

Код:
new final_timestamp = DaysToSeconds(30) + gettime();
O que fizemos aqui foi pegar o timestamp de 30 dias e somar com o timestamp da data atual, portanto hoje 23/03/2015 + 30 dias = 24/04/2015.

3-Agora й com vocк, salve o final_timestamp em algum lugar no caso de seu servidor re-iniciar, e faзa um cуdigo pra carrregar as informaзхes deste veнculo alugado.

4-Agora toda vez que um player entrar no carro, й sу comparar o timestamp de expiraзгo com o timestamp da data atual, pra isso vocк farб algo assim:

Код:
public OnPlayerEnterVehicle(playerid, vehicleid, seat)
{
if(final_timestamp <= gettime()) DestroyVehicle(vehicleid); return 1;
}
A verificaзгo comparou o timestamp da data de expiraзгo do veнculo com a data atual, e caso a data de expiraзгo tenha um timestamp menor ou igual (o que significa que a data atual tem mais ou iguais segundos а data de expiraзгo) o veнculo й deletado. Й bem simples, espero que consiga fazer seu sistema.