Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using DarkRift;
- using DarkRift.ConfigTools;
- using DarkRift.Storage;
- using System;
- using System.Collections.Generic;
- namespace LoginPlugin
- {
- public class LoginPlugin : Plugin
- {
- public override string name { get { return "LoginPlugin"; } }
- public override string version { get { return "1.0"; } }
- public override Command[] commands { get { return new Command[] { }; } }
- public override string author { get { return "Original from Jamie Read"; } }
- public override string supportEmail { get { return "Joskebammens@joske.com"; } }
- //All variables we going to read out of the config file
- private ConfigReader _settings;
- private byte _loginT;
- private ushort _loginSUserLogin;
- private ushort _loginSLogoutUser;
- private ushort _loginSAddUser;
- private ushort _loginSLoginSuccess;
- private ushort _loginSLoginFailed;
- private ushort _loginSLogoutSuccess;
- private ushort _loginSAddUserSuccess;
- private ushort _loginSAddUserFailed;
- private bool _allowAddUser = false;
- private bool _debug = false;
- public LoginPlugin()
- {
- // If not installed: make plugin directory under ./Plugins/Pluginname Alse create the database table for this
- if (!IsInstalled())
- {
- InstallSubdirectory(
- new Dictionary<string, byte[]>()
- {
- {"settings.cnf", System.Text.ASCIIEncoding.ASCII.GetBytes(
- "LoginTag:\t\t\t\t\t10\n" +
- "LoginSubjectUserLogin:\t\t1\n" +
- "LoginSubjectLogoutUser:\t\t2\n" +
- "LoginSubjectAddUser:\t\t3\n" +
- "LoginSubjectLoginSucces:\t4\n" +
- "LoginSubjectLoginFailed:\t5\n" +
- "LoginSubjectLogoutSuccess:\t6\n" +
- "LoginSubjectAddUserSuccess:\t7\n" +
- "LoginSubjectAddUserFailed:\t8\n" +
- "AllowAddUser:\t\t\tTrue\n" +
- "Debug:\t\t\t\t\t\tTrue") }
- }
- );
- try
- {
- DarkRiftServer.database.ExecuteNonQuery(
- "CREATE TABLE IF NOT EXSTS tblplayer(" +
- "id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, " +
- "username VARCHAR(50) NOT NULL, " +
- "password VARCHAR(50) NOT NULL ) ", new QueryParameter[0]
- );
- }
- catch (DatabaseException e)
- {
- Interface.LogError("[LoginPlugin] SQL error during setup: " + e.ToString());
- if (_debug)
- {
- Interface.Log("[LoginPlugin] SQL error during setup: ");
- }
- }
- }
- _settings = new ConfigReader(GetSubdirectory() + "/settings.cnf");
- if (!byte.TryParse(_settings["LoginTag"], out _loginT))
- {
- Interface.LogFatal("[LoginPlugin] Plugin Tag could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if (!ushort.TryParse(_settings["LoginSubjectUserLogin"], out _loginSUserLogin))
- {
- Interface.LogFatal("[LoginPlugin] User Login Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectLogoutUser"], out _loginSLogoutUser))
- {
- Interface.LogFatal("[LoginPlugin] User Logout Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectAddUser"], out _loginSAddUser))
- {
- Interface.LogFatal("[LoginPlugin] Add User Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectLoginSucces"], out _loginSLoginSuccess))
- {
- Interface.LogFatal("[LoginPlugin] User Login Success Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectLoginFailed"], out _loginSLoginFailed))
- {
- Interface.LogFatal("[LoginPlugin] User Login Failed Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectLogoutSuccess"], out _loginSLogoutSuccess))
- {
- Interface.LogFatal("[LoginPlugin] User Logout Success Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectAddUserSuccess"], out _loginSAddUserSuccess))
- {
- Interface.LogFatal("[LoginPlugin] Add User Success Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!ushort.TryParse(_settings["LoginSubjectAddUserFailed"], out _loginSAddUserFailed))
- {
- Interface.LogFatal("[LoginPlugin] Add User Failed Subject could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!bool.TryParse(_settings["AllowAddUser"], out _allowAddUser))
- {
- Interface.LogFatal("[LoginPlugin] Allow Add User could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- if(!bool.TryParse(_settings["Debug"], out _debug))
- {
- Interface.LogFatal("[LoginPlugin]Debug could not be found in settings.cnf");
- DarkRiftServer.Close(true);
- }
- ConnectionService.onServerMessage += OnServerMessage;
- }
- private void OnServerMessage(ConnectionService con, NetworkMessage data)
- {
- if (data.tag == _loginT)
- {
- // Did we get an User Login Message
- if (data.subject == _loginSUserLogin)
- {
- Interface.Log("Login");
- }
- // Did we gat an User Logout Message
- if (data.subject == _loginSLogoutUser)
- {
- Interface.Log("Logout");
- }
- // Did we get an Add User Message
- if (data.subject == _loginSAddUser)
- {
- if(_allowAddUser)
- {
- Interface.Log("Adduser");
- }
- else
- {
- Interface.LogError("AllowAddUser is set to false");
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement