public static void DatabaseManagerInit() { DebugManager.DebugMessage("[DatabaseM] Initalizing database manager..."); _database = MongoClient.GetDatabase("mtg_main"); _countersTable = _database.GetCollection <BsonDocument>("counters"); VehicleTable = _database.GetCollection <Vehicle>("vehicles"); AccountTable = _database.GetCollection <Account>("accounts"); CharacterTable = _database.GetCollection <Character>("characters"); JobTable = _database.GetCollection <Job>("jobs"); PhoneNumbersTable = _database.GetCollection <PhoneNumber>("phonenumbers"); ContactTable = _database.GetCollection <PhoneContact>("phonecontacts"); MessagesTable = _database.GetCollection <PhoneMessage>("phonemessages"); GroupTable = _database.GetCollection <Group>("groups"); PropertyTable = _database.GetCollection <Property>("properties"); DoorsTable = _database.GetCollection <Door>("doors"); CrimeTable = _database.GetCollection <Crime>("crimes"); CriminalRecordTable = _database.GetCollection <CriminalRecord>("criminalrecords"); TreesTable = _database.GetCollection <Tree>("lumberjacktrees"); MappingTable = _database.GetCollection <Mapping>("mapping"); NumberPlatesTable = _database.GetCollection <LicensePlate>("numberplates"); ContainersTable = _database.GetCollection <Container>("containers"); ContainerZonesTable = _database.GetCollection <ContainerZone>("containerzones"); DebugManager.DebugMessage("[DatabaseM] Database Manager initalized!"); }
public DrugsManager() { DebugManager.DebugMessage("[DrugsM]: Drugs are booting up."); Event.OnResourceStart += StartTimer; Event.OnPlayerDisconnected += ClearEffects; DebugManager.DebugMessage("[DrugsM]: Drugs have successfully booted up."); }
public GroupManager() { DebugManager.DebugMessage("[GroupM] Initalizing group manager..."); load_groups(); DebugManager.DebugMessage("[GroupM] Group Manager initalized!"); }
public JobManager() { DebugManager.DebugMessage("[JobM] Initalizing job manager..."); load_jobs(); DebugManager.DebugMessage("[JobM] Job Manager initalized!"); }
public PhoneManager() { DebugManager.DebugMessage("[PhoneM] Initalizing Phone Manager..."); CharacterMenu.OnCharacterLogin += CharacterMenu_OnCharacterLogin; DebugManager.DebugMessage("[PhoneM] Phone Manager initalized."); }
public PhoneManager() { DebugManager.DebugMessage("[PhoneM] Initalizing Phone Manager..."); Event.OnClientEventTrigger += API_onClientEventTrigger; CharacterMenu.OnCharacterLogin += CharacterMenu_OnCharacterLogin; DebugManager.DebugMessage("[PhoneM] Phone Manager initalized."); }
public WeaponManager() { //Event.OnPlayerWeaponAmmoChange += API_onPlayerWeaponAmmoChange; CharacterMenu.OnCharacterLogin += CharacterMenu_OnCharacterLogin; InventoryManager.OnStorageGetItem += InventoryManager_OnStorageGetItem; InventoryManager.OnStorageLoseItem += InventoryManager_OnStorageLoseItem; DebugManager.DebugMessage("[WeaponM] Weapon Manager initalized!"); }
public LoginManager() { DebugManager.DebugMessage("[LoginM] Initalizing Login Manager..."); Event.OnPlayerConnected += OnPlayerConnected; Event.OnPlayerFinishedDownload += OnPlayerFinishedDownload; Event.OnClientEventTrigger += API_onClientEventTrigger; DebugManager.DebugMessage("[LoginM] Login Manager initalized."); }
public void load_groups() { Groups = DatabaseManager.GroupTable.Find(Builders <Group> .Filter.Empty).ToList(); foreach (var g in Groups) { g.register_markerzones(); g.UpdateMapIcon(); } DebugManager.DebugMessage("Loaded " + Groups.Count + " groups from the database."); }
public JobManager() { DebugManager.DebugMessage("[JobM] Initalizing job manager..."); Event.OnPlayerEnterVehicle += API_onPlayerEnterVehicle; Event.OnClientEventTrigger += ApiOnOnClientEventTrigger; load_jobs(); DebugManager.DebugMessage("[JobM] Job Manager initalized!"); }
public Init() { DebugManager.DebugMessage("[INIT] Initalizing script..."); //API.SetServerName(SERVER_NAME + " ~b~| ~g~" + SERVER_WEBSITE); InventoryManager.OnStorageItemUpdateAmount += InventoryManager_OnStorageItemUpdateAmount; SettingsManager.Load(); DebugManager.DebugManagerInit(); DatabaseManager.DatabaseManagerInit(); }
public VehicleManager() { DebugManager.DebugMessage("[VehicleM] Initilizing vehicle manager..."); // Register callbacks Event.OnPlayerEnterVehicle += OnPlayerEnterVehicle; Event.OnVehicleDeath += OnVehicleDeath; Event.OnPlayerExitVehicle += OnPlayerExitVehicle; Event.OnPlayerDisconnected += API_onPlayerDisconnected; Event.OnClientEventTrigger += API_onClientEventTrigger; //Setup respawn timer. VehicleRespawnTimer.Interval = 5000; VehicleRespawnTimer.Elapsed += VehicleRespawnTimer_Elapsed; VehicleRespawnTimer.Start(); //Register for on character enter to show his cars. CharacterMenu.OnCharacterLogin += CharacterMenu_OnCharacterLogin; // Create vehicle table + //load_all_unowned_vehicles(); dropcarShape = API.CreateCylinderColShape(dropcarPosition, 2f, 3f); dropcarShape.onEntityEnterColShape += (shape, entity) => { Client player; if ((player = API.GetPlayerFromHandle(entity)) != null) { Character character = player.GetCharacter(); if (!character.IsOnDropcar) { return; } var veh = GetVehFromNetHandle(API.GetPlayerVehicle(player)); float payment = API.GetVehicleHealth(API.GetPlayerVehicle(player)) / 2; VehicleManager.respawn_vehicle(veh); API.Shared.SetVehicleEngineStatus(veh.NetHandle, false); inventory.InventoryManager.GiveInventoryItem(character, new Money(), (int)payment); character.IsOnDropcar = false; API.TriggerClientEvent(player, "dropcar_removewaypoint"); player.SendChatMessage("Vehicle delivered. You earned $" + (int)payment); } }; DebugManager.DebugMessage("[VehicleM] Vehicle Manager initalized!"); }
public Init() { DebugManager.DebugMessage("[INIT] Initalizing script..."); API.SetServerName(SERVER_NAME + " ~b~| ~g~" + SERVER_WEBSITE); API.SetGamemodeName("Arcadit V-RP " + SERVER_VERSION); Event.OnResourceStart += OnResourceStartHandler; Event.OnResourceStop += API_onResourceStop; Event.OnClientEventTrigger += API_onClientEventTrigger; InventoryManager.OnStorageItemUpdateAmount += InventoryManager_OnStorageItemUpdateAmount; SettingsManager.Load(); DebugManager.DebugManagerInit(); DatabaseManager.DatabaseManagerInit(); }
public PlayerManager() { DebugManager.DebugMessage("[PlayerM] Initalizing player manager..."); //Setup save timer. PlayerSaveTimer.Interval = 900000; PlayerSaveTimer.Elapsed += PlayerSaveTimer_Elapsed; PlayerSaveTimer.Start(); //setup paycheck timer _payCheckTimer = new Timer { Interval = 1000, AutoReset = true }; _payCheckTimer.Elapsed += _payCheckTimer_Elapsed;; _payCheckTimer.Start(); DebugManager.DebugMessage("[PlayerM] Player Manager initalized."); }
public MappingManager() { DebugManager.DebugMessage("[MAPPING MANAGER] Initializing mapping manager..."); Mapping = DatabaseManager.MappingTable.Find(FilterDefinition <Mapping> .Empty).ToList(); foreach (var m in Mapping) { if (m.IsActive) { m.Load(); } } DebugManager.DebugMessage("[MAPPING MANAGER] Loaded " + Mapping.Count() + " mapping requests (" + Mapping.FindAll(m => m.IsActive == true).Count() + " active)"); DebugManager.DebugMessage("[MAPPING MANAGER] Mapping initialized."); }
/*public void load_all_group_vehicles() * { * int j = 0; * * foreach (var i in DatabaseManager.GroupTable.Find(Builders<Group>.Filter.Empty).ToList()) * { * * var filter = Builders<Vehicle>.Filter.Eq("GroupId", i.Id); * var groupVehicles = DatabaseManager.VehicleTable.Find(filter).ToList(); * * foreach (var v in groupVehicles) * { * spawn_vehicle(v); * Vehicles.Add(v); * j++; * } * } * * DebugManager.DebugMessage("Loaded " + j + " group vehicles from the database."); * }*/ public static void load_all_unowned_vehicles() { var filter = Builders <GameVehicle> .Filter.Eq("OwnerId", "0"); var unownedVehicles = DatabaseManager.VehicleTable.Find(filter).ToList(); foreach (var v in unownedVehicles) { spawn_vehicle(v); v.Job = JobManager.GetJobById(v.JobId); v.Group = GroupManager.GetGroupById(v.GroupId); API.Shared.SetBlipTransparency(v.Blip, 100); Vehicles.Add(v); } DebugManager.DebugMessage("Loaded " + unownedVehicles.Count + " unowned vehicles from the database."); }
public void OnPlayerConnected(Client player) { DebugManager.DebugMessage("[LoginM] " + player.SocialClubName + " has connected to the server [NOT LOGGED IN]. (IP: " + player.Address + ")"); LogManager.Log(LogManager.LogTypes.Connection, player.SocialClubName + " has connected to the server [NOT LOGGED IN]. (IP: " + player.Address + ")"); Account account = player.GetAccount(); API.SetEntitySharedData(player, "REG_DIMENSION", 1000); NAPI.Entity.SetEntityDimension(player, 1000); if (account.is_registered()) { NAPI.Chat.SendChatMessageToPlayer(player, "This account is already registered. Use /login [password] to continue to character selection."); } else { NAPI.Chat.SendChatMessageToPlayer(player, "This account is unregistered! Use /register [password] to register it."); } NAPI.Chat.SendChatMessageToPlayer(player, "Press ~g~F12~w~ to disable CEF and login manually."); NAPI.ClientEvent.TriggerClientEvent(player, "onPlayerConnectedEx", account.is_registered()); }
public PlayerManager() { DebugManager.DebugMessage("[PlayerM] Initalizing player manager..."); Event.OnPlayerConnected += OnPlayerConnected; Event.OnPlayerDisconnected += OnPlayerDisconnected; Event.OnClientEventTrigger += API_onClientEventTrigger; Event.OnPlayerDeath += API_onPlayerDeath; Event.OnPlayerHealthChange += API_onPlayerHealthChange; //Setup save timer. PlayerSaveTimer.Interval = 900000; PlayerSaveTimer.Elapsed += PlayerSaveTimer_Elapsed; PlayerSaveTimer.Start(); //setup paycheck timer _payCheckTimer = new Timer { Interval = 1000, AutoReset = true }; _payCheckTimer.Elapsed += _payCheckTimer_Elapsed;; _payCheckTimer.Start(); DebugManager.DebugMessage("[PlayerM] Player Manager initalized."); }
public LoginManager() { DebugManager.DebugMessage("[LoginM] Login Manager initalized."); }
public void load_jobs() { Jobs = DatabaseManager.JobTable.Find(Builders <Job> .Filter.Empty).ToList(); foreach (var j in Jobs) { j.JoinPos = new MarkerZone(j.JoinPos.Location, j.JoinPos.Rotation, j.JoinPos.Dimension) { ColZoneSize = j.JoinPos.ColZoneSize, ColZoneHeight = j.JoinPos.ColZoneHeight, UseColZone = j.JoinPos.UseColZone, BlipColor = j.JoinPos.BlipColor, BlipSprite = j.sprite_type(), BlipName = j.Name, BlipRange = j.JoinPos.BlipRange, BlipTransparency = j.JoinPos.BlipTransparency, BlipShortRange = j.JoinPos.BlipShortRange, BlipScale = j.JoinPos.BlipScale, UseBlip = j.JoinPos.UseBlip, MarkerColor = j.JoinPos.MarkerColor, MarkerDirection = j.JoinPos.MarkerDirection, MarkerType = j.JoinPos.MarkerType, MarkerScale = j.JoinPos.MarkerScale, UseMarker = j.JoinPos.UseMarker, TextLabelColor = j.JoinPos.TextLabelColor, TextLabelText = "~g~" + j.Name + "~n~/joinjob", TextLabelSeeThrough = j.JoinPos.TextLabelSeeThrough, TextLabelRange = j.JoinPos.TextLabelRange, TextLabelSize = j.JoinPos.TextLabelSize, UseText = j.JoinPos.UseText }; j.JoinPos?.Create(); if (j.MiscOne != MarkerZone.None) { j.MiscOne = new MarkerZone(j.MiscOne.Location, j.MiscOne.Rotation, j.MiscOne.Dimension) { ColZoneSize = j.MiscOne.ColZoneSize, ColZoneHeight = j.MiscOne.ColZoneHeight, UseColZone = j.MiscOne.UseColZone, BlipColor = j.MiscOne.BlipColor, BlipSprite = j.MiscOne.BlipSprite, BlipName = j.MiscOne.BlipName, BlipRange = j.MiscOne.BlipRange, BlipTransparency = j.MiscOne.BlipTransparency, BlipShortRange = j.MiscOne.BlipShortRange, BlipScale = j.MiscOne.BlipScale, UseBlip = j.MiscOne.UseBlip, MarkerColor = j.MiscOne.MarkerColor, MarkerDirection = j.MiscOne.MarkerDirection, MarkerType = j.MiscOne.MarkerType, MarkerScale = j.MiscOne.MarkerScale, UseMarker = j.MiscOne.UseMarker, TextLabelColor = j.MiscOne.TextLabelColor, TextLabelText = j.MiscOne.TextLabelText, TextLabelSeeThrough = j.MiscOne.TextLabelSeeThrough, TextLabelRange = j.MiscOne.TextLabelRange, TextLabelSize = j.MiscOne.TextLabelSize, UseText = j.MiscOne.UseText }; j.MiscOne.Create(); } if (j.MiscTwo != MarkerZone.None) { j.MiscTwo = new MarkerZone(j.MiscTwo.Location, j.MiscTwo.Rotation, j.MiscTwo.Dimension) { ColZoneSize = j.MiscTwo.ColZoneSize, ColZoneHeight = j.MiscTwo.ColZoneHeight, UseColZone = j.MiscTwo.UseColZone, BlipColor = j.MiscTwo.BlipColor, BlipSprite = j.MiscTwo.BlipSprite, BlipName = j.MiscTwo.BlipName, BlipRange = j.MiscTwo.BlipRange, BlipTransparency = j.MiscTwo.BlipTransparency, BlipShortRange = j.MiscTwo.BlipShortRange, BlipScale = j.MiscTwo.BlipScale, UseBlip = j.MiscTwo.UseBlip, MarkerColor = j.MiscTwo.MarkerColor, MarkerDirection = j.MiscTwo.MarkerDirection, MarkerType = j.MiscTwo.MarkerType, MarkerScale = j.MiscTwo.MarkerScale, UseMarker = j.MiscTwo.UseMarker, TextLabelColor = j.MiscTwo.TextLabelColor, TextLabelText = j.MiscTwo.TextLabelText, TextLabelSeeThrough = j.MiscTwo.TextLabelSeeThrough, TextLabelRange = j.MiscTwo.TextLabelRange, TextLabelSize = j.MiscTwo.TextLabelSize, UseText = j.MiscTwo.UseText }; j.MiscTwo.Create(); } for (var i = 0; i < j.JobZones.Count; i++) { float width = j.JobZones[i].GetData <float>("Width"); float height = j.JobZones[i].GetData <float>("Height"); j.JobZones[i] = NAPI.ColShape.Create2DColShape(j.JobZones[i].Position.X, j.JobZones[i].Position.Y, width, height); j.register_job_zone_events(i); } j.register_job_marker_events(); } DebugManager.DebugMessage("Loaded " + Jobs.Count + " jobs from the database."); }
public DrugsManager() { DebugManager.DebugMessage("[DrugsM]: Drugs system initialized."); }
public VehicleMenu() { Event.OnClientEventTrigger += OnClientEventTrigger; DebugManager.DebugMessage("[VehicleMenu] Vehicle Menu initalized."); }
public void OnPlayerConnected(Client player) { DebugManager.DebugMessage("[LoginM] " + player.socialClubName + " has connected to the server [NOT LOGGED IN]. (IP: " + player.address + ")"); LogManager.Log(LogManager.LogTypes.Connection, player.socialClubName + " has connected to the server [NOT LOGGED IN]. (IP: " + player.address + ")"); }
public VehicleMenu() { DebugManager.DebugMessage("[VehicleMenu] Vehicle Menu initalized."); }
public void OnClientEventTrigger(Client player, string eventName, params object[] arguments) { switch (eventName) { case "OnVehicleMenuTrigger": var vehicleHandle = (NetHandle)arguments[0]; var option = (string)arguments[1]; Character character = player.GetCharacter(); Vehicle vehicle = API.Shared.GetEntityData(vehicleHandle, "Vehicle"); var playerSeat = API.Shared.GetPlayerVehicleSeat(player); //Check that player vehicle is the same as the menu vehicle... if (API.Shared.GetPlayerVehicle(player) != vehicleHandle) { DebugManager.DebugMessage("[VehicleMenu] " + character.CharacterName + "(" + player.socialClubName + ", " + player.handle + ") used VehicleMenu option in a different vehicle handle."); return; } var vehAccess = VehicleManager.DoesPlayerHaveVehicleAccess(player, vehicle); var parkAccess = VehicleManager.DoesPlayerHaveVehicleParkLockAccess(player, vehicle); if ((option.Equals("park") || option.Equals("lock")) && !parkAccess) { API.Shared.SendChatMessageToPlayer(player, "~r~ You do not have access to this vehicle."); return; } if ((option.Equals("engine") || option.Equals("park")) && playerSeat != -1) { API.Shared.SendChatMessageToPlayer(player, "~r~ You can only access these options in the driver seat."); return; } switch (option) { case "engine": if (vehAccess) { VehicleManager.engine_cmd(player); } else { VehicleManager.hotwire_cmd(player); } break; case "lock": var lockState = API.Shared.GetVehicleLocked(vehicleHandle); if (lockState) { API.Shared.SetVehicleLocked(vehicleHandle, false); ChatManager.RoleplayMessage(character, "unlocks the doors of the vehicle.", ChatManager.RoleplayMe); } else { API.Shared.SetVehicleLocked(vehicleHandle, true); ChatManager.RoleplayMessage(character, "locks the doors of the vehicle.", ChatManager.RoleplayMe); } break; case "park": var pos = API.GetEntityPosition(vehicleHandle); var rot = API.GetEntityRotation(vehicleHandle); var dimension = API.GetEntityDimension(vehicleHandle); vehicle.SpawnPos = pos; vehicle.SpawnRot = rot; vehicle.SpawnDimension = dimension; vehicle.Save(); API.Shared.SendChatMessageToPlayer(player, "Car spawn location saved to current location."); break; case "door": var doorIndex = (int)arguments[2]; var doorName = ""; switch (doorIndex) { case 0: doorName = "front left door"; break; case 1: doorName = "front right door"; break; case 2: doorName = "back left door"; break; case 3: doorName = "back right door"; break; case 4: doorName = "hood"; break; case 5: doorName = "trunk"; break; } var doorState = API.GetVehicleDoorState(vehicleHandle, doorIndex); if (doorState) { API.SetVehicleDoorState(vehicleHandle, doorIndex, false); ChatManager.RoleplayMessage(character, "closed the " + doorName + " of the vehicle.", ChatManager.RoleplayMe); } else { API.SetVehicleDoorState(vehicleHandle, doorIndex, true); ChatManager.RoleplayMessage(character, "opened the " + doorName + " of the vehicle.", ChatManager.RoleplayMe); } break; } break; } }