Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //===========================Include============================================//
- #include <a_samp>
- #include <core>
- #include <float>
- #include <YSI\y_ini>
- #include <zcmd>
- /*
- Utilisation de la directive de préprocesseur "#pragma tabsize 0" e"st à éviter car elle ne résous en aucun cas
- le soucis qui est la mauvaise indention du code.
- Eviter le probléme n'est pas une chose à faire.
- La mise en commentaire d'une portion de code "supprimée" est une habitude à perdre car inutile.
- Elle nuis à la lisibilitée du code et ne présente que peu d'intéret comparée à une bonne gestion des versions.
- */
- new PlayerInfo[MAX_PLAYERS][pInfo];
- new Float:vehicule_pos1[8][3] = //Positions des spawns aléatoires map1
- {
- {3238.39941406,731.89941406,4.30000019}, {-2429.3652,-339.0829,34.9499}, {3357.6997,738.0734,17.6202}, {3273.1646,686.4924,6.1535},
- {3307.0864,732.0012,15.7862}, {-2501.6934,-336.7023,29.5681}, {3357.5640,726.4132,17.2859}, {3266.3027,732.5334,4.7034}
- };
- new Float:vehicule_pos2[8][3] = //Positions des spawns aléatoires map2
- {
- {-1778.9545898,4937.3281250,0.0000000}, {-1807.4595947,4910.5546875,-49.8157158}, {-1807.4595947,4910.5546875,-49.8157158}, {-1807.4595947,4910.5546875,-49.8157158},
- {-1778.9545898,4937.3281250,0.0000000}, {-1807.4595947,4910.5546875,-49.8157158}, {-1807.4595947,4910.5546875,-49.8157158}, {-1807.4595947,4910.5546875,-49.8157158}
- };
- new MapChange;
- forward StartedNewRound();
- forward NewMapTimer(playerid);
- forward PerPlayerOneSecondTimer(playerid);
- /*
- L'utilisation d'un seul timer de 1 seconde par joueur permet d'éviter la création de multiples timers similaires.
- Pour le moment, ça ne chaneg pas garnd chose mais cela te sera utile dé que tu voudra jouter une autre fonction
- appelée chaque seconde.
- */
- //===========================Stock============================================//
- public OnPlayerConnect(playerid)
- {
- SetTimerEx("PerPlayerOneSecondTimer", 1000, true, "d", playerid);
- //Une vérification toute les 100ms ? c'est bien trop; une par seconde suffis amplement
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- switch(MapChange)
- {
- case 0:
- {
- new randSpawn = random(8);
- new vehicleid = CreateVehicle(556, vehicule_pos1[randSpawn][0], vehicule_pos1[randSpawn][1], vehicule_pos1[randSpawn][2], 0.0, -1, -1, -1);
- PutPlayerInVehicle(playerid, vehicleid, 0);
- }
- case 1:
- {
- new randSpawn = random(8);
- new vehicleid = CreateVehicle(556, vehicule_pos2[randSpawn][0], vehicule_pos2[randSpawn][1], vehicule_pos2[randSpawn][2], 0.0, -1, -1, -1);
- PutPlayerInVehicle(playerid, vehicleid, 0);
- }
- }
- return 1;
- }
- public NewMapTimer(playerid)
- {
- MapChange++;
- GameTextForAll("~b~ Changment de ~w~MAP",4000,3);
- SetTimer("StartedNewRound",4000,false);
- return 1;
- }
- public StartedNewRound()
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- SpawnPlayer(i);
- switch(MapChange)
- {
- case 0:
- SendClientMessage(i,VERT,"Changement de map effectuer");
- case 1:
- SendClientMessage(i,VERT,"Changement de map effectuer");
- }
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- //OnPlayerSpawn(playerid);
- //WTF ?! Quel intéret puisque la CB "OnPlayerSpawn" sera appelé à peine quelques milisecondes plus tard.
- return 1;
- }
- public OnGameModeInit()
- {
- SetGameModeText("T.L.P-Derby");
- ShowPlayerMarkers(0);
- ShowNameTags(1);
- AllowAdminTeleport(1);
- SetTimer("NewMapTimer",180000,true);
- MapChange = 0;
- SendRconCommand("password TLP");
- AddPlayerClass(2, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- //vehicleid = GetPlayerVehicleID(playerid); WTF?! Tu a dèja le parramétre, pourquoi donc chercher à obtenir ce que tu a dèja ?
- DestroyVehicle(vehicleid);
- SetPlayerHealth(playerid, 0);
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- DestroyVehicle(vehicleid);
- return 1;
- }
- public PerPlayerOneSecondTimer(playerid)
- {
- CkeckPos(playerid);
- }
- CheckPos(playerid)
- {
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- if(Z < 0)
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- SetPlayerHealth(playerid, 0);
- DestroyVehicle(vehicleid);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement