GTA Közösség - A magyar GTA fórum
San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Xeon - 2013. augusztus 05. - 14:23:41
-
Üdv!
Az lenne a gondom, hogy bugos a fegyverek sebzése (ha ez számít valamit át van állítva), ugyanis az élet regenerálódást nem tudom normálisan megoldani hozzá. Ez úgy néz ki, hogy tizedmásodpercenként tölt vissza a játékosnak egy timer segítségével egy hp-t. A gond az, hogy van mikor lövöm a játékost és semmi baja nem lesz. Az élete leugrik egy pillanatra, de aztán azonnal vissza és ezt csak néha csinálja. Az én elméletem az, hogy pont akkor tölti vissza a hp-t, mikor a fegyver megsebezte, vagyis ez úgy néz ki, hogy:
lekéri az életét az adott pillanatban,
közben épp meglövik és sebzõdik,
beállítja a lekért élet + 1-et a játékosnak. Így visszaáll a hp a lövés elõttire (+1).
Lehet ezt másképp megoldani, hogy esetleg ne buggoljanak össze?
-
Ehhez timer se kellene,
Nem tudom jól értelmeztem e.
Azt szeretnéd, ha meglövik azonnal töltõdjön vissza maxra? vagy csak ha nem 100 az élete akkor töltõdjön?:o
-
Sikerült kicsit bénán fogalmazni.
Tehát a szerveren egy timer segítségével 100 ezred mp alatt visszatölt a játékosnak egy hp-t, ha 100 alatt van neki. A probléma az, hogy elõfordul, hogy mikor lelövöm pont akkor tölt vissza, így a lövés sebzését nem számolva visszatölti. Magyarul olyan ilyenkor, mintha kihagyott volna egy lövést.
Az én elméletem rá az az, hogy lekéri az életét, legyen most pl 80. Meglövik a játékost, de méga lövés elõtt kérte le a hp-t, így ha teszem azt a fegyó sebzése 50, akkor az élete lemegy ugyan 30-ra, de a lekért élet 80, és az van neki beállítva, hogy ugye a lekért + 1-re állítsa az életét, így 31 helyett 81-re állítja az életét és így olyan mintha nem érzékelte volna a lövést. Így érthetõbb?
-
Nem fogalmaztad bénán. Csak az elõzõ hozzászóló nem tud olvasni. :3
A timeredhez kéne berakni, hogy akkor ne töltsön mikor éppen sebzik.
Sebzéskor egy változót igazzá állítasz, az élettöltésnél lecsekkolod hogy a változó hamis-e. Az élettöltés funkció legalján (return 1 elõtt) pedig a változót hamissá állítod.