public void ClientEvent(Client player, PlayerInfo objplayer, string eventName) { switch (eventName) { #region Bouton E case "Bouton.E": //Entrée Auto-Ecole if (!player.isInVehicle && player.position.DistanceTo(Constante.Pos_EntrerAutoEcole) < 2) { API.setEntityPosition(player, Constante.Pos_SortieAutoEcole); return; } if (!player.isInVehicle && player.position.DistanceTo(Constante.Pos_EntrerPrison) < 4 && objplayer.factionid == Constante.Faction_Gardien) { API.setEntityPosition(player, Constante.Pos_SortiePrison); objplayer.IsFactionDuty = true; API.sendChatMessageToPlayer(player, "~#d2d628~", "Tu viens de prendre ton service."); if (objplayer.sexe == 0) { API.setPlayerClothes(player, 3, 0, 0); API.setPlayerClothes(player, 4, 35, 0); API.setPlayerClothes(player, 5, 0, 0); API.setPlayerClothes(player, 6, 25, 0); API.setPlayerClothes(player, 7, 0, 0); API.setPlayerClothes(player, 8, 58, 0); API.setPlayerClothes(player, 11, 55, 0); } else { API.setPlayerClothes(player, 3, 14, 0); API.setPlayerClothes(player, 4, 34, 0); API.setPlayerClothes(player, 5, 0, 0); API.setPlayerClothes(player, 6, 25, 0); API.setPlayerClothes(player, 7, 0, 0); API.setPlayerClothes(player, 8, 35, 0); API.setPlayerClothes(player, 11, 48, 0); } API.givePlayerWeapon(player, WeaponHash.Flashlight, 1, true, true); API.givePlayerWeapon(player, WeaponHash.StunGun, 1, true, true); API.givePlayerWeapon(player, WeaponHash.Nightstick, 1, true, true); return; } if (!player.isInVehicle && player.position.DistanceTo(Constante.Pos_SortiePrison) < 4 && objplayer.factionid == Constante.Faction_Gardien) { API.setEntityPosition(player, Constante.Pos_EntrerPrison); objplayer.IsFactionDuty = false; API.removeAllPlayerWeapons(player); objplayer.armure = 0; API.sendChatMessageToPlayer(player, "~#d2d628~", "Tu viens de terminer ton service."); API.call("Connexion", "LoadVetements", player); API.call("Connexion", "LoadAccessoires", player); return; } //Sortie Auto-Ecole if (!player.isInVehicle && player.position.DistanceTo(Constante.Pos_SortieAutoEcole) < 2) { API.setEntityPosition(player, Constante.Pos_EntrerAutoEcole); return; } //Job eboueur if (!player.isInVehicle && player.position.DistanceTo(Constante.Pos_ServiceEboueur) < 2) { if (objplayer.jobid == Constante.Job_Eboueur) { if (objplayer.IsJobDuty == false) { API.setPlayerClothes(player, 3, 119, 0); API.setPlayerClothes(player, 4, 36, 0); API.setPlayerClothes(player, 6, 51, 0); API.setPlayerClothes(player, 8, 59, 0); API.setPlayerClothes(player, 11, 57, 0); objplayer.IsJobDuty = true; } else { objplayer.IsJobDuty = false; if (objplayer.pendingpaye > 0) { API.sendChatMessageToPlayer(player, "Merci pour ton travail, tu reçevra ton argent sur ta prochaine paye!"); } Connexion lv = new Connexion(); lv.LoadVetements(player); lv.LoadAccessoires(player); return; } } else { API.sendChatMessageToPlayer(player, "~r~Tu ne fais pas partie ~s~de ce job, fais toi d'abord recruter. ~m~(/rejoindreeboueur)"); } } //Menu Auto-Ecole if (!player.isInVehicle && player.position.DistanceTo(new Vector3(-139.1808, -631.9503, 168.8204)) < 2) { API.triggerClientEvent(player, "MenuAutoEcole"); return; } //Menu Armurerie if (police.isArmurerieLSPD(player)) { if (!Fonction.IsPlayerInFaction(objplayer, "Police", true)) { return; } if (objplayer.IsFactionDuty == true) { API.triggerClientEvent(player, "MenuArmurerieLSPD"); } else { API.sendChatMessageToPlayer(player, Constante.PasEnService); } return; } //menu cellule if (police.isCellule(player)) { if (!Fonction.IsPlayerInFaction(objplayer, "Police", true)) { return; } if (objplayer.IsFactionDuty == true) { API.triggerClientEvent(player, "MenuCelluleLSPD"); } else { API.sendChatMessageToPlayer(player, Constante.PasEnService); } return; } //Menu Distrib if (police.isDistrib(player)) { API.triggerClientEvent(player, "MenuDistrib"); return; } //Menu Service if (police.isService(player)) { if (Fonction.IsPlayerInFaction(objplayer, "Police", true)) { API.triggerClientEvent(player, "MenuService"); } return; } //Menu Armurerie civile if (Fonction.isArmurerieCivil(player)) { API.triggerClientEvent(player, "MenuArmurerieCivil"); return; } //Menu ATM if (ATMInfo.GetATMInfoClosePos(player.position, 2) != null) { if (Fonction.IsPlayerInFaction(objplayer, "Gardien", false) && objplayer.IsJobDuty == true) { objplayer.sacbanque = false; API.setPlayerClothes(player, 5, 0, 0); } else { API.triggerClientEvent(player, "showATM"); objplayer.IdATM = ATMInfo.GetATMInfoClosePos(player.position, 2).ID; API.setEntitySyncedData(player, "SoldeCompte", objplayer.bank); } return; } //Menu Banque if (BanqueInfo.GetBanqueInfoClosePos(player.position, 1) != null) { API.triggerClientEvent(player, "MenuBanque"); objplayer.IdBanque = BanqueInfo.GetBanqueInfoClosePos(player.position, 1).ID; return; } //Menu Magasin if (Magasin.isMagasin(player)) { API.triggerClientEvent(player, "MenuMagasin"); return; } //Menu Revendeur if (Magasin.isRevendeur(player)) { API.triggerClientEvent(player, "MenuRevendeur"); return; } //Menu Logement if (Logement.IsLogement(player)) { if (Logement.HasProprietaire(player, Logement.GetLogementIDProche(player))) { if (Logement.PlayerHaveKeyHouse(player, Logement.GetLogementIDProche(player))) { API.triggerClientEvent(player, "MenuMaisonAchetéeProprio"); } else { API.triggerClientEvent(player, "MenuMaisonAchetéeNonProprio"); } } else { API.triggerClientEvent(player, "MenuMaisonAVendre"); } return; } //Entrée Planque if (CommandesFaction.IsEntreePlanque(player) && objplayer.dimension == 0) { System.Data.DataTable result = API.shared.exported.database.executeQueryWithResult("SELECT * FROM PlanqueFaction"); if (result.Rows.Count != 0) { foreach (System.Data.DataRow row in result.Rows) { String nominte = Convert.ToString(row["nominte"]); int PorteOuverture = Convert.ToInt32(row["locked"]); if (PorteOuverture == 1) { API.shared.sendNotificationToPlayer(player, "La porte est fermée."); } else { if (nominte == "InteArmes") { API.shared.setEntityPosition(player, CommandesFaction.InteArmes); objplayer.IsOnInt = true; objplayer.IsOnPlanqueArmes = true; API.shared.setEntityDimension(player, Convert.ToInt32(row["ID"])); objplayer.dimension = Convert.ToInt32(row["ID"]); return; } if (nominte == "InteDrogues") { //API.shared.setEntityPosition(player, InteDrogues); API.shared.sendChatMessageToPlayer(player, "En maintenance."); objplayer.IsOnInt = true; objplayer.IsOnPlanqueArmes = true; API.shared.setEntityDimension(player, Convert.ToInt32(row["ID"])); objplayer.dimension = Convert.ToInt32(row["ID"]); return; } } } } } //Sortie Planque if (CommandesFaction.IsSortiePlanque(player) && objplayer.dimension != 0) { System.Data.DataTable result = API.shared.exported.database.executeQueryWithResult("SELECT * FROM PlanqueFaction"); if (result.Rows.Count != 0) { foreach (System.Data.DataRow row in result.Rows) { objplayer.IsOnInt = false; API.shared.setEntityDimension(player, 0); objplayer.dimension = 0; Vector3 logpos = new Vector3(float.Parse(String.Format("" + row["PosX"])), float.Parse(String.Format("" + row["PosY"])), float.Parse(String.Format("" + row["PosZ"]))); API.shared.setEntityPosition(player, logpos); objplayer.IsOnPlanqueArmes = false; return; } } } //Menu hackeur if (Hackeur.isRepairePNJ(player)) { API.triggerClientEvent(player, "MenuPNJHackeur"); return; } if (API.getEntityData(player, "OrdiHack") == true) { API.triggerClientEvent(player, "MenuHackeur"); return; } if (Hackeur.isRepaireDehors(player)) { API.setEntityPosition(player, new Vector3(1274.184, -1719.719, 54.77145)); return; } if (Hackeur.isRepaireDedans(player)) { API.setEntityPosition(player, new Vector3(882.7369, -1052.517, 33.00666)); return; } //menu exte veh if (!player.isInVehicle) { VehiculeInfo objveh = VehiculeInfo.GetVehicleArroundPlayer(player); if (objveh != null) { API.triggerClientEvent(player, "MenuExteVeh"); } return; } //menu veh eboueur if (player.position.DistanceTo(Constante.Pos_CamionEboueur) < 2) { if (objplayer.jobid == Constante.Job_Eboueur) { if (objplayer.IsJobDuty == true) { API.triggerClientEvent(player, "MenuVehEboueur"); } else { API.sendChatMessageToPlayer(player, "Tu n'es pas en service."); } } else { API.sendChatMessageToPlayer(player, "Tu n'es pas éboueur."); } return; } break; #endregion #region Bouton F1 case "Bouton.F1": //menu inte veh if (player.isInVehicle == true) { if (player.isInVehicle == true) { API.triggerClientEvent(player, "MenuInteVeh"); } return; } break; #endregion #region Bouton F2 case "Bouton.F2": //menu Unite LSPD if (objplayer.factionid == Constante.Faction_Police && UnitesLSPDInfo.GetUniteLSPDInfoByMembre(player) != null) { API.triggerClientEvent(player, "MenuUniteLSPD"); return; } break; #endregion #region Bouton R case "Bouton.R": //event rechargement if (Inventaire.GetItemNumberInBDD(player, 11) != 0) { API.triggerClientEvent(player, "RechargementPistol"); } if (Inventaire.GetItemNumberInBDD(player, 12) != 0) { API.triggerClientEvent(player, "RechargementSMG"); } if (Inventaire.GetItemNumberInBDD(player, 13) != 0) { API.triggerClientEvent(player, "RechargementRifle"); } if (Inventaire.GetItemNumberInBDD(player, 14) != 0) { API.triggerClientEvent(player, "RechargementPompe"); } break; #endregion } }
public void ScriptEvent(Client sender, PlayerInfo objplayer, string eventName) { if (eventName == "ConvoyeurKeyPressed" && !API.isPlayerInAnyVehicle(sender)) { VehiculeInfo objvehicule = VehiculeInfo.GetVehicleArroundPlayer(sender); if (objvehicule == null) { return; /* ??? c bon sa*/ } if (objplayer.sacbanque == true) { var sacs = objvehicule.sacs; if (sacs != 5) { var asacs = sacs + 1; objvehicule.sacs = asacs; objplayer.sacbanque = false; API.setPlayerClothes(sender, 5, 0, 0); if (asacs == 5) { API.sendChatMessageToPlayer(sender, "~g~Le camion est plein ! Tu peux y aller !"); } } } else { var sacs = objvehicule.sacs; if (sacs != 0) { objplayer.sacbanque = true; var nsacs = sacs - 1; API.setPlayerClothes(sender, 5, 45, 0); objvehicule.sacs = nsacs; if (nsacs == 0) { API.sendChatMessageToPlayer(sender, "~g~Tu viens de prendre le dernier sac ! Remplis l'ATM puis choisis entre recommencer (se rendre au point indiqué) ou arreter (/stopjob) !"); API.triggerClientEvent(sender, "pointconv"); } } } } if (eventName == "DepotConvKey" && !API.isPlayerInAnyVehicle(sender) && sender.position.DistanceTo(Constante.Pos_DepotConvoyeur) < 2) { if (Fonction.IsPlayerInFaction(objplayer, "Gardien", false)) { if (objplayer.IsJobDuty != true) { if (objplayer.sexe == 0) { int[] draw = { 0, 0, -1, 44, 31, 0, 24, 0, 23, 0, 0, 130 }; int[] tex = { 0, 0, -1, 0, 0, 0, 0, 0, 2, 0, 0, 0 }; for (int i = 0; i < draw.Length; i++) { API.setPlayerClothes(sender, i, draw[i], tex[i]); } API.setPlayerAccessory(sender, 0, 65, 0); } else { int[] draw = { 0, 0, -1, 49, 32, 0, 25, 0, 2, 0, 0, 127 }; int[] tex = { 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; for (int i = 0; i < draw.Length; i++) { API.setPlayerClothes(sender, i, draw[i], tex[i]); } API.setPlayerAccessory(sender, 0, 64, 0); } objplayer.IsJobDuty = true; objplayer.sacbanque = false; API.sendNotificationToPlayer(sender, "~g~Montes dans un ~r~camion ~g~et rends toi au ~r~point ~g~indiqué."); API.triggerClientEvent(sender, "pointconv"); } else { API.sendNotificationToPlayer(sender, "~g~Tu viens de te retirer du service."); Connexion lv = new Connexion(); API.clearPlayerAccessory(sender, 0); lv.LoadVetements(sender); lv.LoadAccessoires(sender); objplayer.IsJobDuty = false; } } else { API.sendChatMessageToPlayer(sender, "~r~Tu n'es pas Convoyeur de Fonds"); } } if (eventName == "ConvoyeurKeyPressed" && API.isPlayerInAnyVehicle(sender) && objplayer.retourconv == true && sender.position.DistanceTo(new Vector3(490.227, -1402.756, 29.32529)) < 4) { VehiculeInfo objvehicule = VehiculeInfo.GetVehicleInfoByNetHandle(sender.vehicle); if (objvehicule.jobid == Constante.Job_Convoyeur) { Client[] jo = API.getVehicleOccupants(objvehicule.handle); foreach (Client value in jo) { API.warpPlayerOutOfVehicle(value); objplayer.retourconv = false; } API.setEntityPosition(objvehicule.handle, objvehicule.pos); API.setEntityRotation(objvehicule.handle, objvehicule.rot); objvehicule.sacs = 0; API.setVehicleEngineStatus(objvehicule.handle, false); } } }