Salut!
Astazi va invat cum sa faceti cabinet pentru factiuni!
Primadata trebuie sa adaugam cateva lucruri si dupaia ne apucam de treaba.
Adaugam sub enum pInfo
La OnPlayerConnect adaugam
Cautam cu ctrl+h if(BoxWaitTime[i] > 0) si adaugam deasupra codul de mai jos
La OnPlayerUpdate adaugam codul de mai jos
La OnPlayerLogin adaugam codul de mai jos
Acuma putem sa incepem sa facem cabinetul propriu zis:
Pasul 1:
Pasul 2:
Adaugam sub public OnPlayerSelectedMenuRow(playerid, row)
Primadata new Menu:Current = GetPlayerMenu(playerid); si sub adaugam codul de mai jos.
Pasul 3:
Adaugam la OnGameModeInit
Pasul 4:
Adaugam la OnPlayerCommandText
Si acesta a fost tot tutorialul!
Daca aveti probleme lasati un reply aici sau la discutii scripting.
Astazi va invat cum sa faceti cabinet pentru factiuni!
Primadata trebuie sa adaugam cateva lucruri si dupaia ne apucam de treaba.
Adaugam sub enum pInfo
- Cod:
pCabinetTime,
La OnPlayerConnect adaugam
- Cod:
PlayerInfo[playerid][pCabinetTime] = 0;
Cautam cu ctrl+h if(BoxWaitTime[i] > 0) si adaugam deasupra codul de mai jos
- Cod:
if(PlayerInfo[i][pCabinetTime] > 0)
{
if(PlayerInfo[i][pCabinetTime] <= 0)
{
PlayerInfo[i][pCabinetTime] = 0;
}
else
{
PlayerInfo[i][pCabinetTime] -= 1;
}
}
- Cod:
format(var, 32, "CabinetTime=%d\n",PlayerInfo[playerid][pCabinetTime]);fwrite(hFile, var);
La OnPlayerUpdate adaugam codul de mai jos
- Cod:
format(var, 32, "CabinetTime=%d\n",PlayerInfo[playerid][pCabinetTime]);fwrite(hFile, var);
La OnPlayerLogin adaugam codul de mai jos
- Cod:
if( strcmp( key , "CabinetTime" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCabinetTime] = strval( val ); }
Acuma putem sa incepem sa facem cabinetul propriu zis:
Pasul 1:
- Cod:
new Menu:cabinet5;
Pasul 2:
Adaugam sub public OnPlayerSelectedMenuRow(playerid, row)
Primadata new Menu:Current = GetPlayerMenu(playerid); si sub adaugam codul de mai jos.
- Cod:
if(Current == cabinet5)
{
switch(row)
{
case 0:
{
GivePlayerWeapon(playerid, 24, 20);
SendClientMessage(playerid, COLOR_1GREEN, "*** You have get an Desert Eagle from Cabinet");
PlayerInfo[playerid][pCabinetTime] = 60;
}
case 1:
{
GivePlayerWeapon(playerid, 30, 15);
SendClientMessage(playerid, COLOR_1GREEN, "*** You have get an Kalasnikov from Cabinet");
PlayerInfo[playerid][pCabinetTime] = 60;
}
case 2:
{
GivePlayerWeapon(playerid, 29, 20);
SendClientMessage(playerid, COLOR_1GREEN, "*** You have get an Maschinenpistole5 from Cabinet");
PlayerInfo[playerid][pCabinetTime] = 60;
}
case 3:
{
GivePlayerWeapon(playerid, 8, 1);
SendClientMessage(playerid, COLOR_1GREEN, "*** You have get an Katana from Cabinet");
PlayerInfo[playerid][pCabinetTime] = 10;
}
case 4:
{
SetPlayerHealth(playerid,100);
SendClientMessage(playerid, COLOR_1GREEN, "*** You healed yourself");
PlayerInfo[playerid][pCabinetTime] = 10;
}
}
}
Pasul 3:
Adaugam la OnGameModeInit
- Cod:
cabinet5 = CreateMenu("LaCosaNostra Cabinet", 1, 200.0, 100.0, 150.0, 150.0);
AddMenuItem(cabinet5, 0, "Desert Eagle");
AddMenuItem(cabinet5, 0, "Kalasnikov");
AddMenuItem(cabinet5, 0, "Maschinenpistole5");
AddMenuItem(cabinet5, 0, "Katana");
AddMenuItem(cabinet5, 0, "Health");
Pasul 4:
Adaugam la OnPlayerCommandText
- Cod:
if(!strcmp(cmdtext, "/cabinet", true))
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5)
{
if(PlayerToPoint(5,playerid,938.5041,6.8202,1000.9297))
{
if(PlayerInfo[playerid][pCabinetTime] == 0)
{
ShowMenuForPlayer(cabinet5, playerid);
return 1;
}
else
{
new cabinettime = PlayerInfo[playerid][pCabinetTime];
format(string, sizeof(string), "*** You must wait %d seconds to get again from cabinet.", cabinettime);
SendClientMessage(playerid, COLOR_1BLUE, string);
}
}
else
{
SendClientMessage(playerid, COLOR_1BLUE, "*** You are not at cabinet");
}
}
Si acesta a fost tot tutorialul!
Daca aveti probleme lasati un reply aici sau la discutii scripting.