Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-07-13, 13:42


Maxvell

d_b






Wiek: 26
Na forum: 4771 dni
Posty: 83
Nick w MP: Kotlet

Piwa: 270

Respekt: 65

Siema mam problem mz komenda /zp tzn jak zapne to zapina ale jak w cos walne to i tak zabiera hp mozna prosic o pomoc?. nizej kod rzem z /op


Kod:

if (strcmp(cmdtext, "/zp", true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
pasy[playerid] = 1;
SendClientMessage(playerid, COLOR_YELLOW, "Pasy zapi?te! Mo?esz ruszac! :) ");
}
else{
SendClientMessage(playerid, COLOR_LIGHTRED, "Nie jeste? w poje?dzie!");
}
return 1;
}
if (strcmp(cmdtext, "/op", true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
pasy[playerid] = 0;
SendClientMessage(playerid, COLOR_YELLOW, "Pasy odpi?te!");
}
else{
SendClientMessage(playerid, COLOR_LIGHTRED, "Nie jeste? w poje?dzie!");
}
return 1;
}


za pomoc piwo :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 13:50


akon823

Czekotubka :D






Wiek: 29
Na forum: 4815 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Ale konkretnie co Ty chcesz ? Chcesz ?e gdy ma zapi?te pasy to zabiera mniej ?ycia a jak odpi?te to wi?cej ?:P Je?li tak to musisz to po??czy? z systemem wypadk?w je?li taki masz :D I nawiasem to strcmp jest ju? przestarza?e :D

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 13:52


Maxvell

d_b






Wiek: 26
Na forum: 4771 dni
Posty: 83
Nick w MP: Kotlet

Piwa: 270

Respekt: 65

chce zeby jak walnie to nic nie zabiera a jak ma odpi?te to zabiera


to jest kod wypadku

Kod:

forward WypadekAuta();
public WypadekAuta()
{

new Float:health;

for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
GetVehicleHealth(IDWozu[i], NoweHPPojazdu[IDWozu[i]]);
HPPojazdu[IDWozu[i]] = StareHPPojazdu[IDWozu[i]] - NoweHPPojazdu[IDWozu[i]];
if(HPPojazdu[IDWozu[i]] >= 80 && IsPlayerInVehicle(i, IDWozu[i]) && (GetPlayerState(i) == PLAYER_STATE_DRIVER || GetPlayerState(i) == PLAYER_STATE_PASSENGER) && Wypadek[i] == false)
{
for(new g=0;g<MAX_PLAYERS;g++)
{
if(IsPlayerConnected(g))
{
if(IsPlayerInVehicle(g, IDWozu[i]))
{
Wypadek[g] = true;
GetPlayerHealth(g, health);
SetPlayerHealth(g, health-40);
TogglePlayerControllable(g, 0);
GetVehicleHealth(IDWozu[g], NoweHPPojazdu[IDWozu[g]]);
if(NoweHPPojazdu[IDWozu[g]] < 300)
{
SetVehicleHealth(IDWozu[i], 0);
}
StareHPPojazdu[IDWozu[i]] = 0;
NoweHPPojazdu[IDWozu[i]] = 0;
HPPojazdu[IDWozu[i]] = 0;

new bool:faktycznie[MAX_PLAYERS] = false;
if(gTeam[i] == TEAM_MEDYK)
{
new Float:x, Float:y, Float:z;
SendClientMessage(g, COLOR_LIGHTRED, "{FFFFFF}Wypadek! {ff0000}Poczekaj 5 sekund i wezwij pogotowie, aby zregenerowa? swoje ?ycie");
GetPlayerPos(g, x, y ,z );
SetPlayerCP(i,x,y,z, 10);
faktycznie[g]=true;
SendClientMessage(i, COLOR_LIGHTRED, "{FFFFFF}Wypadek na drodze! {ff0000}Miejsce wypadku zaznaczone jest na mapie czerwonym kwadratem.");
}
else if(faktycznie[g] == false)
{
TimerPOWYPADKU[g] = SetTimerEx("PoWypadku", 5000, 0, "d", g);
SendClientMessage(g, COLOR_YELLOW, "{FFFFFF}Wypadek! {ff0000}Poczekaj 5 sekund i wezwij pogotowie, aby zregenerowa? swoje ?ycie");
}
}
}
}
}


[ Dodano: 2013-07-13, 13:59 ]
a tu jest dalsze

Kod:

IDWozu[i] = GetPlayerVehicleID(i);
GetVehicleHealth(IDWozu[i], StareHPPojazdu[IDWozu[i]]);
}
}
}

forward PoWypadku(playerid);
public PoWypadku(playerid)
{
Wypadek[playerid] = false;
TogglePlayerControllable(playerid, 1);
}

forward Wypadki();
public Wypadki(){
new Float:x, Float:y, Float:z;
for(new k = 0; k < MAX_PLAYERS; k++)
{
if(IsPlayerConnected(k))
{
if(Wypadek[k] == true){
GetPlayerPos(k, x, y, z);
for(new e = 0; e < MAX_PLAYERS; e++)
{
if(IsPlayerConnected(e))
{
if(gTeam[e] == TEAM_MEDYK){
SetPlayerCP(e, x, y, z, 10);
}
}
}
}
}
}
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 14:26


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

Rejmunt, A do tej funkcji wypadek masz jaki? timer czy co ? Jak tak to zabij go jak u?yjesz komendy: /zp.

Pozdrawiam :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 14:49


akon823

Czekotubka :D






Wiek: 29
Na forum: 4815 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Albo po prostu daj taki warunek ?e ifpasy[playerid] = 0; to ma si? sta? wypadek a je?li pasy = 1 to wysy?aj wiadomo?? ?e prze?y? dzi?ki zapi?tym pasom :D

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 15:55


Maxvell

d_b






Wiek: 26
Na forum: 4771 dni
Posty: 83
Nick w MP: Kotlet

Piwa: 270

Respekt: 65

Kopcioo, mam timer na wypadek

[ Dodano: 2013-07-13, 15:56 ]
i co mam go usunac?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 16:05


akon823

Czekotubka :D






Wiek: 29
Na forum: 4815 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Zobacz mo?e co? takiego ;]
Chyba ?e wolisz jakos inaczej to robi? ;p

Kod:

if(pasy[playerid] == 0)
{
SetPlayerHealth(g, health-40);
}
else
SendClientMessage(playerid, -1, "Nie straci?e? hp dzi?ki zapi?tym pasom !");


Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 17:15


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

Rejmunt, Zrobimy troch? innym sposobem, patrz zamie? ten poprzedni kod na taki:
Kod:

forward WypadekAuta();
public WypadekAuta()
{
new Float:health;
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
GetVehicleHealth(IDWozu[i], NoweHPPojazdu[IDWozu[i]]);
HPPojazdu[IDWozu[i]] = StareHPPojazdu[IDWozu[i]] - NoweHPPojazdu[IDWozu[i]];
if(HPPojazdu[IDWozu[i]] >= 80 && IsPlayerInVehicle(i, IDWozu[i]) && (GetPlayerState(i) == PLAYER_STATE_DRIVER || GetPlayerState(i) == PLAYER_STATE_PASSENGER) && Wypadek[i] == false)
{
if(pasy[playerid] == 1)
{
SendClientMessage(playerid,-1,"Masz wypadek, ale pasy s? zapi?te wi?c hp nie zostalo ci zabrane");
return 1;
}
for(new g=0;g<MAX_PLAYERS;g++)
{
if(IsPlayerConnected(g))
{
if(IsPlayerInVehicle(g, IDWozu[i]))
{
Wypadek[g] = true;
GetPlayerHealth(g, health);
SetPlayerHealth(g, health-40);
TogglePlayerControllable(g, 0);
GetVehicleHealth(IDWozu[g], NoweHPPojazdu[IDWozu[g]]);
if(NoweHPPojazdu[IDWozu[g]] < 300)
{
SetVehicleHealth(IDWozu[i], 0);
}
StareHPPojazdu[IDWozu[i]] = 0;
NoweHPPojazdu[IDWozu[i]] = 0;
HPPojazdu[IDWozu[i]] = 0;

new bool:faktycznie[MAX_PLAYERS] = false;
if(gTeam[i] == TEAM_MEDYK)
{
new Float:x, Float:y, Float:z;
SendClientMessage(g, COLOR_LIGHTRED, "{FFFFFF}Wypadek! {ff0000}Poczekaj 5 sekund i wezwij pogotowie, aby zregenerowa? swoje ?ycie");
GetPlayerPos(g, x, y ,z );
SetPlayerCP(i,x,y,z, 10);
faktycznie[g]=true;
SendClientMessage(i, COLOR_LIGHTRED, "{FFFFFF}Wypadek na drodze! {ff0000}Miejsce wypadku zaznaczone jest na mapie czerwonym kwadratem.");
}
else if(faktycznie[g] == false)
{
TimerPOWYPADKU[g] = SetTimerEx("PoWypadku", 5000, 0, "d", g);
SendClientMessage(g, COLOR_YELLOW, "{FFFFFF}Wypadek! {ff0000}Poczekaj 5 sekund i wezwij pogotowie, aby zregenerowa? swoje ?ycie");
}
}
}
}
}


Powinno to dzia?a? tak ?e jak uderzysz pojazdem to poka?e Ci info na czacie :) A hp nie zostanie zabrane :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 17:47


akon823

Czekotubka :D






Wiek: 29
Na forum: 4815 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Pisa?em tak od pocz?tku to kombinujecie z jakimi? timerami :D

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 17:55


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

akon823, z Timerem te? mo?na zrobi? :D Zabijasz potem aktywujesz i jest dobrze ale ten spos?b jest lepszy :P

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 17:56


akon823

Czekotubka :D






Wiek: 29
Na forum: 4815 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Po co mu miesza? z timerami :D Lepiej prosty warunek :P

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 21:17


Maxvell

d_b






Wiek: 26
Na forum: 4771 dni
Posty: 83
Nick w MP: Kotlet

Piwa: 270

Respekt: 65

Kopcioo, to mam wstawic ten kod zamiast tametego?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-13, 22:07


akon823

Czekotubka :D






Wiek: 29
Na forum: 4815 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Tak wstaw ten co on Ci poda? zamiast tamtego ale nic wi?cej nie usuwaj . Zamie? tylko ten co masz taki sam na ten co poda? .

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-14, 10:49


Maxvell

d_b






Wiek: 26
Na forum: 4771 dni
Posty: 83
Nick w MP: Kotlet

Piwa: 270

Respekt: 65

zamieni?em i mam 2 errory

Kod:

C:\Users\?ukasz\Downloads\Testowa.pwn(5731) : error 017: undefined symbol "playerid"
C:\Users\?ukasz\Downloads\Testowa.pwn(5733) : error 017: undefined symbol "playerid"
C:\Users\?ukasz\Downloads\Testowa.pwn(5778) : warning 209: function "WypadekAuta" should return a value
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-14, 11:33


B!4CK

Never give UP!






Wiek: 32
Na forum: 5809 dni
Posty: 1047
Nick w MP: John

Piwa: 1891

Respekt: 124,2
Respekt: 124,2

Rejmunt, w owym kodzie masz, ?e jak zapniesz pasy to zabiera Ci mniej HP mimo, ?e pojazd straci wi?cej ni? 50 lub 100 z 1000% HP pojazdu, dlatego Ci odejmuje o dwa lub wi?cej procent HP po uderzeniu nawet z pasami, a bez pas?w b?dziesz mia? wi?ksze obra?enia.

Podpis
Cześć
! :)


Projekt, który poruszy scenę platformy SA:MP!
Postaw piwo autorowi tego posta
 

 
Tagi: komenda
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku