Jump to content
  • 0

Question

Posted (edited)

Salut, cateodata pe server cand dau ALT sa ma pun Spec OFF inloc sa ma dea in pozitia salvata (atunci cand dau /spec [id] inainte sa ma puna spec imi salveaza locatia) cateodata imi da spawn si nu ma mai teleporteaza in locatia salvata.

 

Si am facut sa mi se salveze Hp-ul si Armura, insa la fel, cand dau spec off nu imi pune HP-ul si Armura pe care i-am avut initial. (imi pune HP 1 si Armura 1)

 

OnPlayerSpawn: https://pastebin.com/47rPrz58

Cand salvez la /spec pozitia la jucator: https://pastebin.com/CmkLdhfL

Si Spec OFF de pe ALT: https://pastebin.com/71hYNUyu

Edited by Rayan

5 answers to this question

Recommended Posts

  • 0
Posted

Pentru ca tu incerci sa salvezi intr-o variabila o functie care de fapt intoarce o valoare prin referinta

http://wiki.sa-mp.com/wiki/GetPlayerHealth

Trebuie sa pui acel BeforeSpectacting in GetPlayerHealth pentru ca tu vei avea mereu 1 in acea variabila pentru ca functia intoarce  1 daca a putut lua viata...

Si nu ai la specoff SetPlayerPos si etc(ca sa seteze pozitia veche) sau nu vad la specoff ca dai (re)spawn la player ca sa fie chemata functia OnPlayerSpawn...

  • 0
Posted
La 10/9/2017 la 16:25, Banditul a spus:

Pentru ca tu incerci sa salvezi intr-o variabila o functie care de fapt intoarce o valoare prin referinta

http://wiki.sa-mp.com/wiki/GetPlayerHealth

Trebuie sa pui acel BeforeSpectacting in GetPlayerHealth pentru ca tu vei avea mereu 1 in acea variabila pentru ca functia intoarce  1 daca a putut lua viata...

Si nu ai la specoff SetPlayerPos si etc(ca sa seteze pozitia veche) sau nu vad la specoff ca dai (re)spawn la player ca sa fie chemata functia OnPlayerSpawn...

adica ceva de genul?

GetPlayerHealth(playerid, BeforeSpectate[playerid][pHealth]);
    GetPlayerArmour(playerid, BeforeSpectate[playerid][pArmour]);

  • 0
Posted

De ce incerci sa iti salvezi hp/armura ? tu esti o fantoma find spec nu este nevoie sa fie salvat hp/armura si la coordonate fa in DB sa ramana salvat coordonatele dupa ce dai spec altfel daca dai pe a doua persoana salveaza datele de la ultima persoana ... adica daca tu esti in fata la LSPD si prima persoana ce dai spec este in SF si dupa dai pe o alta ce este in LV tie iti ia coordonatele de la persoana din SF, si in asa fel cu crearea coordonatelor in DB atunci cand dai /spec se salveaza si cand dai /specoff sau pe butonul ALT iti da coordonatele ce le-ai avut de la bun inceput si se sterg cand dai specoff.

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted
Acum 15 ore, StR_Marian a spus:

De ce incerci sa iti salvezi hp/armura ? tu esti o fantoma find spec nu este nevoie sa fie salvat hp/armura si la coordonate fa in DB sa ramana salvat coordonatele dupa ce dai spec altfel daca dai pe a doua persoana salveaza datele de la ultima persoana ... adica daca tu esti in fata la LSPD si prima persoana ce dai spec este in SF si dupa dai pe o alta ce este in LV tie iti ia coordonatele de la persoana din SF, si in asa fel cu crearea coordonatelor in DB atunci cand dai /spec se salveaza si cand dai /specoff sau pe butonul ALT iti da coordonatele ce le-ai avut de la bun inceput si se sterg cand dai specoff.

Nu man, inainte sa ma puna spectator verifica daca sunt sau nu spectate pe cineva, daca nu sunt adica pSpectate[playerid] == -1 (nu sunt spec) imi salveaza coordonatele, ex: nu sunt Spectate, dau /spec 1 imi salveaza pozitia mea, nu la jucator, dupa daca nu ies din spec si dau spectate pe altcineva /spec 2 (cum am zis mai devreme, nu imi salveaza pozitia daca sunt deja spec pe cineva), si dupa cand dau ALT ma da la pozitia salvata din primul spec.

Sunt LSPD, dau /spec 1 el e la Paramedic SF, dau /spec 2 el e LV, dau ALT ma da LSPD (unde eram initial), insa problema e ca caotedata nu ma da la pozitia salvata, ma da la spawn.

  • 0
Posted
  1. BeforeSpectate[playerid][pHealth] = GetPlayerHealth(playerid, s_def[0]);
  2.     BeforeSpectate[playerid][pArmour] = GetPlayerArmour(playerid, s_def[1]);
Liniile astea 2 sunt gresite(fac parte din codul de la /spec). Corect sunt asa:
  1. GetPlayerHealth(playerid, s_def[0]BeforeSpectate[playerid][pHealth]);
  2.  GetPlayerArmour(playerid, s_def[1]BeforeSpectate[playerid][pArmour]);
si la spec off
pui setplayerhealt si setplayerarmour, setplayerpos si setplayervirtualworld.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.