1.0 Update

This commit is contained in:
SchnitzelPommes 2018-12-15 07:46:51 +01:00
parent ddfc4d7e36
commit d27a52a879
31 changed files with 1131 additions and 218 deletions

View File

@ -1 +0,0 @@
com\DayZ-SA-Tomato

View File

@ -1 +0,0 @@
1

View File

@ -1,3 +1,2 @@
76561198161388867
76561198017833573
76561198134309775
76561198065995341

View File

@ -0,0 +1,15 @@
prison;2651.42 0.0 1395.8
mogilevka;7572.65 0.0 5182.3
stary;6192.39 0.0 7666.5
msta;11206.6 0.0 5398.70
solni;13436.5 0.0 6158.7
cherno;6350.99 0.0 2666.12
elektro;10432.1 0.0 2218.56
berez;12661.4 0.0 9465.03
tisy;1890.45 0.0 13704.6
gorka;9678.94 0.0 8828.93
balota;4546.92 0.0 2416.4
vybor;3916.85 0.0 8795.59
vybora;4107.80 0.0 11205.29
severo;8318.51 0.0 12743.4
severor;7986.21 0.0 12737.1

View File

@ -0,0 +1 @@
DePbo.dll.6.44

View File

@ -0,0 +1 @@
18121423

View File

@ -1,6 +0,0 @@
///'scripts.pbo' from Mikero's dos tools, dll version 5.66///
prefix=com\DayZ-Sa-Tomato
revision=1
Pbo Type is: Arma Unknown pbo typ (no config).
Sha: '5CAF7A50CB0D1CACBB90A6A0DA4EFC47B8998E0D'
//////</HEADER>//////

Binary file not shown.

View File

@ -1,10 +0,0 @@
class CfgPatches
{
class DayZSATomato
{
units[]={};
weapons[]={};
requiredVersion=0.1;
requiredAddons[]={};
};
};

View File

@ -23,21 +23,23 @@ modded class MissionServer
{
protected bool m_bLoaded;
ref DevTeleport devTeleport;
ref FileHandler fileHandler;
ref AdminMenu adminMenu;
ref DevCam devCam;
protected float m_LogInTimerLength = 1;
protected float m_LogInTimerLength1 = 1;
//admin list
PlayerBase Admin = NULL;
protected ref map<string, string> m_AdminList;
static ref map<string, string> m_StaminaList;
protected string m_AdminListPath = "$CurrentDir:\\DayZ-SA-Tomato\\Config\\";
protected string m_AdminListPath2 = "$CurrentDir:\\@DayZ-SA-Tomato\\Config\\";
void MissionServer()
{
//super.MissionServer();
Print( "Dayz-Sa-Tomato initialized .." );
m_bLoaded = false;
devTeleport = new DevTeleport();
fileHandler = new FileHandler();
adminMenu = new AdminMenu();
devCam = new DevCam();
}
@ -77,7 +79,7 @@ modded class MissionServer
NewPosition[0] = OldPosition[0] + 1.5;
NewPosition[1] = OldPosition[1] + 0.1;
NewPosition[2] = OldPosition[2] + 1.5;
EntityAI gun = GetGame().CreateObject( "SVD", NewPosition, false, true );
EntityAI gun = EntityAI.Cast(GetGame().CreateObject( "SVD", NewPosition, false, true ));
gun.GetInventory().CreateAttachment("PSO1Optic");
gun.GetInventory().CreateAttachment("ImprovisedSuppressor");
gun.GetInventory().CreateAttachment("GhillieAtt_Tan");
@ -92,6 +94,8 @@ modded class MissionServer
return gun;
}
override void OnEvent(EventType eventTypeId, Param params)
{
super.OnEvent(eventTypeId,params);
@ -164,7 +168,7 @@ modded class MissionServer
vector pos;
pos = currentPlayer.GetPosition();
CLogDebug("CommunityOfflineServer - SendPosTOAdmins1/2() - Name :" + PlayerName + "pos : " + pos);
Print("CommunityOfflineServer - SendPosTOAdmins1/2() - Name :" + PlayerName + "pos : " + pos);
//SendPosToAdmins(PlayerName, pos);
m_currentPlayer1++;
@ -187,7 +191,7 @@ modded class MissionServer
PlayerSteam64ID1 = AdminIdent1.GetPlainId();
if (IsAdmin(AdminPlayerName1, PlayerSteam64ID1 ))
{
CLogDebug("CommunityOfflineServer - SendPosTOAdmins2/2() - Name :" + PlayerName + "pos : " + pos);
Print("CommunityOfflineServer - SendPosTOAdmins2/2() - Name :" + PlayerName + "pos : " + pos);
ScriptRPC PPos = new ScriptRPC();
PPos.Write(PlayerName);
PPos.Write(pos);
@ -218,7 +222,7 @@ modded class MissionServer
PlayerIdent = currentPlayer.GetIdentity();
PlayerName = PlayerIdent.GetName();
PlayerSteam64ID = PlayerIdent.GetPlainId();
CLogDebug("CommunityOfflineServer - SendPlayerListToAdmins() - Name :" + PlayerName + "m_currentPlayer1 : " + m_currentPlayer1);
Print("CommunityOfflineServer - SendPlayerListToAdmins() - Name :" + PlayerName + "m_currentPlayer1 : " + m_currentPlayer1);
//SendPosToAdmins(PlayerName, pos);
m_currentPlayer1++;
@ -272,19 +276,7 @@ modded class MissionServer
// bool IsAdmin( string name, string ID )
// {
// array<Man> players = new array<Man>;
// GetGame().GetPlayers( players );
// for (int i = 0; i < players.Count(); ++i)
// {
// if (players.Get(i).GetIdentity().GetName() == name && m_AdminList.Contains(ID))
// {
// return true;
// }
// }
// return false;
// }
@ -302,17 +294,17 @@ modded class MissionServer
Count = 0;
}
PlayerBase currentPlayer = PlayerBase.Cast(m_Players.Get(Count));
CLogDebug("Current Player : " + currentPlayer.GetIdentity().GetName() + "Count : " + Count.ToString());
Print("Current Player : " + currentPlayer.GetIdentity().GetName() + "Count : " + Count.ToString());
if (currentPlayer.GetIdentity().GetName() == name && m_AdminList.Contains(ID))
{
Admin = currentPlayer;
//AdminIdentity = Admin.GetIdentity();
//AdminUID = AdminIdentity.GetPlainId();
CLogDebug("Returning True for : " + players.Get(i).GetIdentity().GetName() );
Print("Returning True for : " + players.Get(i).GetIdentity().GetName() );
return Admin;
}else
{
CLogDebug("Returning False 1" );
Print("Returning False 1" );
Admin = NULL;
}
Count ++;
@ -366,6 +358,8 @@ modded class MissionServer
m_AdminList = new map<string, string>; //UID, name
m_StaminaList = new map<string, string>; //UID, name
FileHandle AdminUIDSFile = OpenFile(m_AdminListPath + "Admins.txt", FileMode.READ);
FileHandle AdminUIDSFile2 = OpenFile(m_AdminListPath2 + "Admins.txt", FileMode.READ);
if (AdminUIDSFile != 0)
{
string line_content = "";
@ -376,6 +370,16 @@ modded class MissionServer
}
CloseFile(AdminUIDSFile);
}
if (AdminUIDSFile2 != 0)
{
string line_content2 = "";
while ( FGets(AdminUIDSFile2,line_content2) > 0 )
{
m_AdminList.Insert(line_content2,"null"); //UID , NAME
Print("Adding Admin: "+ line_content2 + " To the Admin List!");
}
CloseFile(AdminUIDSFile2);
}
}
@ -412,37 +416,37 @@ modded class MissionServer
static void SetupWeather()
{
//Offical DayZ SA weather code
Weather weather = g_Game.GetWeather();
// Weather weather = g_Game.GetWeather();
weather.GetOvercast().SetLimits( 0.0 , 2.0 );
weather.GetRain().SetLimits( 0.0 , 2.0 );
weather.GetFog().SetLimits( 0.0 , 2.0 );
// weather.GetOvercast().SetLimits( 0.0 , 2.0 );
// weather.GetRain().SetLimits( 0.0 , 2.0 );
// weather.GetFog().SetLimits( 0.0 , 2.0 );
weather.GetOvercast().SetForecastChangeLimits( 0.0, 0.0 );
weather.GetRain().SetForecastChangeLimits( 0.0, 0.0 );
weather.GetFog().SetForecastChangeLimits( 0.0, 0.0 );
// weather.GetOvercast().SetForecastChangeLimits( 0.0, 0.0 );
// weather.GetRain().SetForecastChangeLimits( 0.0, 0.0 );
// weather.GetFog().SetForecastChangeLimits( 0.0, 0.0 );
weather.GetOvercast().SetForecastTimeLimits( 1800 , 1800 );
weather.GetRain().SetForecastTimeLimits( 600 , 600 );
weather.GetFog().SetForecastTimeLimits( 600 , 600 );
// weather.GetOvercast().SetForecastTimeLimits( 1800 , 1800 );
// weather.GetRain().SetForecastTimeLimits( 600 , 600 );
// weather.GetFog().SetForecastTimeLimits( 600 , 600 );
weather.GetOvercast().Set( 0.0, 0, 0 );
weather.GetRain().Set( 0.0, 0, 0 );
weather.GetFog().Set( 0.0, 0, 0 );
// weather.GetOvercast().Set( 0.0, 0, 0 );
// weather.GetRain().Set( 0.0, 0, 0 );
// weather.GetFog().Set( 0.0, 0, 0 );
weather.SetWindMaximumSpeed( 50 );
weather.SetWindFunctionParams( 0, 0, 1 );
// weather.SetWindMaximumSpeed( 50 );
// weather.SetWindFunctionParams( 0, 0, 1 );
}
override void OnPreloadEvent(PlayerIdentity identity, out bool useDB, out vector pos, out float yaw, out int queueTime)
{
if (GetHive())
{
queueTime = m_LogInTimerLength;
queueTime = m_LogInTimerLength1;
}
else
{
queueTime = m_LogInTimerLength;
queueTime = m_LogInTimerLength1;
}
}

View File

@ -61,4 +61,7 @@ enum M_RPCs
M_Admin_Menu_Log_Startup = 7039;
M_Admin_Menu_Log_RPC = 7040;
M_Admin_Menu_Message = 7041;
M_Admin_Menu_Teleport_List_Request = 7042;
M_Admin_Menu_Teleport_List = 7043;
M_Admin_Menu_TpMeToPos = 7044;
}

View File

@ -0,0 +1,98 @@
class FileHandler
{
//Main Folder
string MainFolder = "$profile:\\Dayz-Sa-Tomato";
string MainFolderPath = "$profile:\\Dayz-Sa-Tomato\\";
//Config Folder and Files
string ConfigFolder = MainFolderPath + "Config";
string ConfigFolderPath = MainFolderPath + "Config\\";
string ConfigFile = ConfigFolderPath + "Config.txt";
string AdminsFile = ConfigFolderPath + "Admins.txt";
//Customization Folder and Files
string CustomizationFolder = MainFolderPath + "Customization";
string CustomizationFolderPath = MainFolderPath + "Customization\\";
string TeleportFile = CustomizationFolderPath + "Teleport_Locations.txt";
void FileHandler()
{
CheckAndCreateFiles();
}
void CheckAndCreateFiles()
{
CheckFolder(MainFolder);
CheckFolder(ConfigFolder);
CheckFolder(CustomizationFolder);
CheckFile(ConfigFile);
CheckFile(AdminsFile);
CheckFile(TeleportFile);
}
void CheckFile(string File)
{
if(FileExist(File))
{
GetServerMission().Print("FileHandler : File " + File + " found!");
}else
{
FileHandle file = OpenFile(File, FileMode.APPEND);
if (file != 0)
{
FPrintln(file, " ");
CloseFile(file);
}
if(FileExist(File))
{
if(File == TeleportFile)
{
CreateTeleportFile();
}else
{
GetServerMission().Print("FileHandler : File " + File + " Created");
}
}
}
}
void CheckFolder(string Folder)
{
if(FileExist(Folder))
{
GetServerMission().Print("FileHandler : Folder " + Folder + " found!");
}else
{
MakeDirectory(Folder);
if(FileExist(Folder))
{
GetServerMission().Print("FileHandler : Folder " + Folder + " Created");
}
}
}
void CreateTeleportFile()
{
FileHandle file = OpenFile(TeleportFile, FileMode.APPEND);
if (file != 0)
{
FPrintln(file, "prison;2651.42 0.0 1395.8");
FPrintln(file, "mogilevka;7572.65 0.0 5182.3");
FPrintln(file, "stary;6192.39 0.0 7666.5");
FPrintln(file, "msta;11206.6 0.0 5398.70");
FPrintln(file, "solni;13436.5 0.0 6158.7");
FPrintln(file, "cherno;6350.99 0.0 2666.12");
FPrintln(file, "elektro;10432.1 0.0 2218.56");
FPrintln(file, "berez;12661.4 0.0 9465.03");
FPrintln(file, "tisy;1890.45 0.0 13704.6");
FPrintln(file, "gorka;9678.94 0.0 8828.93");
FPrintln(file, "balota;4546.92 0.0 2416.4");
FPrintln(file, "vybor;3916.85 0.0 8795.59");
FPrintln(file, "vybora;4107.80 0.0 11205.29");
FPrintln(file, "severo;8318.51 0.0 12743.4");
FPrintln(file, "severor;7986.21 0.0 12737.1");
CloseFile(file);
}
}
}

View File

@ -0,0 +1,4 @@
class FileReader
{
}

View File

@ -265,7 +265,7 @@ static MissionServer GetServerMission()
static ref PlayerBase GetPlayer()
{
return GetGame().GetPlayer();
return PlayerBase.Cast(GetGame().GetPlayer());
}
static bool SHIFT()

View File

@ -23,6 +23,7 @@ class AdminMenu //extends UIScriptedMenu
ref AdminMenuGui m_adMenu;
ref AdminMenuGuiMap m_map;
ref AdminMenuManager adminMenuManager;
PlayerBase Admin;
PlayerIdentity AdminIdentity;
string AdminUID;
@ -31,6 +32,7 @@ class AdminMenu //extends UIScriptedMenu
void AdminMenu()
{
GetDayZGame().Event_OnRPC.Insert( this.ReceiveRPC );
adminMenuManager = new AdminMenuManager();
//adminMenuMain = new AdminMenuMain();
}
@ -95,7 +97,7 @@ class AdminMenu //extends UIScriptedMenu
Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
if ( Admin != NULL)
{
GetServerMission().CLogDebug(DebugLog);
GetServerMission().Print(DebugLog);
}
}
break;
@ -133,11 +135,11 @@ class AdminMenu //extends UIScriptedMenu
case (int)M_RPCs.M_Admin_Menu:
if ( GetGame().IsServer() )
{
GetServerMission().CLogDebug("M_RPCs.M_Admin_Menu - RPC Main sender : " + sender.GetName());
GetServerMission().Print("M_RPCs.M_Admin_Menu - RPC Main sender : " + sender.GetName());
Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
if ( Admin != NULL)
{
GetServerMission().CLogDebug("M_RPCs.M_Admin_Menu - Is Admin sender : " + sender.GetName() + "Admin name : " + Admin.GetIdentity().GetName());
GetServerMission().Print("M_RPCs.M_Admin_Menu - Is Admin sender : " + sender.GetName() + "Admin name : " + Admin.GetIdentity().GetName());
AdminIdentity = Admin.GetIdentity();
AdminUID = AdminIdentity.GetPlainId();
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_OK, new Param1<string>( "Test" ), false, AdminIdentity );
@ -189,7 +191,8 @@ class AdminMenu //extends UIScriptedMenu
//obEditor.addObject( oObj );
if ( oObj.IsInherited( ItemBase ) )
{
oItem = ( ItemBase ) oObj;
//oItem = ( ItemBase ) oObj;
oItem = ItemBase.Cast(oObj);
SetupSpawnedItem( oItem, oItem.GetMaxHealth(), 1 );
quantity = 0;
@ -225,7 +228,7 @@ class AdminMenu //extends UIScriptedMenu
if ( Admin != NULL)
{
EntityAI oObjp = GetGame().CreateObject( ItemPrev_Item, vector.Zero, false, false );
EntityAI oObjp = EntityAI.Cast(GetGame().CreateObject( ItemPrev_Item, vector.Zero, false, false ));
//obEditor.addObject( oObj );
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Spawn_ItemPrev_ok, new Param1<EntityAI>( oObjp ), false, AdminIdentity );
@ -268,7 +271,7 @@ class AdminMenu //extends UIScriptedMenu
oInvItem.SetHealth( oInvItem.GetMaxHealth() );
if ( oInvItem.IsInherited( ItemBase ) )
{
oItem = ( ItemBase ) oObj;
oItem = ItemBase.Cast(oObj);
SetupSpawnedItem( oItem, oItem.GetMaxHealth(), 1 );
quantity = 0;
text = Inventory_QuantityItem;
@ -315,12 +318,12 @@ class AdminMenu //extends UIScriptedMenu
Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
if ( Admin != NULL)
{
EntityAI oCursorObj = GetGame().CreateObject( Cursor_Item, Cursor_Pos, false, ai );
EntityAI oCursorObj = EntityAI.Cast(GetGame().CreateObject( Cursor_Item, Cursor_Pos, false, ai ));
//obEditor.addObject( oCursorObj );
if ( oCursorObj.IsInherited( ItemBase ) )
{
oItem = ( ItemBase ) oCursorObj;
oItem = ItemBase.Cast(oCursorObj);
SetupSpawnedItem( oItem, oItem.GetMaxHealth(), 1 );
quantity = 0;
@ -382,7 +385,7 @@ class AdminMenu //extends UIScriptedMenu
{
for ( int a = 0; a < players.Count(); ++a )
{
selectedPlayer = players.Get(a);
selectedPlayer = PlayerBase.Cast(players.Get(a));
selectedIdentity = selectedPlayer.GetIdentity();
if ( selectedIdentity.GetName() == PlayerName )
{
@ -412,12 +415,12 @@ class AdminMenu //extends UIScriptedMenu
vector AdminPos;
AdminPos = Admin.GetPosition();
GetServerMission().CLogDebug("TPTO Target : " + selectedIdentity.GetName() + " PlayerName : " + PlayerName);
GetServerMission().Print("TPTO Target : " + selectedIdentity.GetName() + " PlayerName : " + PlayerName);
for ( int it = 0; it < playerstptp.Count(); ++it )
{
PlayerBase Targettpto = playerstptp.Get(it);
PlayerBase Targettpto = PlayerBase.Cast(playerstptp.Get(it));
selectedIdentity =playerstptp.Get(it).GetIdentity();
GetServerMission().CLogDebug("TPTO Target : " + selectedIdentity.GetName() + " PlayerName : " + PlayerName + " Number :" + it.ToString());
GetServerMission().Print("TPTO Target : " + selectedIdentity.GetName() + " PlayerName : " + PlayerName + " Number :" + it.ToString());
if ( selectedIdentity.GetName() == PlayerName )
{
//PlayerBase Target = players.Get(i);
@ -443,7 +446,7 @@ class AdminMenu //extends UIScriptedMenu
// }
// selectedPlayer = PlayerBase.Cast(m_Players.Get(Count));
// selectedIdentity = selectedPlayer.GetIdentity();
// GetServerMission().CLogDebug("Current Player : " + selectedIdentity.GetName() + "TP Player name : " + PlayerName);
// GetServerMission().Print("Current Player : " + selectedIdentity.GetName() + "TP Player name : " + PlayerName);
// if ( selectedIdentity.GetName() == PlayerName )
// {
// selectedPlayer.SetPosition(Admin.GetPosition());
@ -483,6 +486,43 @@ class AdminMenu //extends UIScriptedMenu
}
}
if ( GetGame().IsClient() && GetGame().IsMultiplayer() )
{
}
break;
case M_RPCs.M_Admin_Menu_TpMeToPos:
string TpDestination;
ctx.Read( TpDestination );
if ( GetGame().IsServer() )
{
TStringArray strs = new TStringArray;
vector vecTpDestination = TpDestination.ToVector();
TpDestination.Split(" ", strs );
float x = strs.Get(0).ToFloat();
float y = strs.Get(2).ToFloat();
float z = 0.0;
string Vec = "" + strs.Get(0).ToFloat() + "0.0" + strs.Get(2).ToFloat();
//vector ofixPlayerPos = Vector(x, 0.0, y)
//vector ofixPlayerPos = Vector( x, z, y );
Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
if ( Admin != NULL)
{
//vector position = strs.Get(0) + " 0 " + strs.Get(2);
vector position = TpDestination.ToVector();
vector ofixPlayerPos;
ofixPlayerPos[0] = strs.Get(0).ToFloat();
ofixPlayerPos[2] = strs.Get(2).ToFloat();
ofixPlayerPos = SnapToGround( ofixPlayerPos );
Print("Teleport strs 0 : " + strs.Get(0) + " 1 : " + strs.Get(1) + " 2 : " + strs.Get(2));
Print("Teleport Location ofix full : " + ofixPlayerPos);
Print("Teleport Location ToDestination Pos : " + TpDestination + strs.Get(0) + strs.Get(2));
Admin.SetPosition(ofixPlayerPos);
}
}
if ( GetGame().IsClient() && GetGame().IsMultiplayer() )
{
}
@ -513,11 +553,11 @@ class AdminMenu //extends UIScriptedMenu
if ( Admin != NULL)
{
Car MyNiva;
vector position = Admin.GetPosition();
vector position22 = Admin.GetPosition();
float adminHeading = MiscGameplayFunctions.GetHeadingAngle(Admin);
vector posModifier = Vector(-(3 * Math.Sin(adminHeading)), 0, 3 * Math.Cos(adminHeading));
MyNiva = Car.Cast(GetGame().CreateObject( "OffroadHatchback", position + posModifier, false, true, true ));
MyNiva = Car.Cast(GetGame().CreateObject( "OffroadHatchback", position22 + posModifier, false, true, true ));
MyNiva.GetInventory().CreateAttachment("HatchbackHood");
MyNiva.GetInventory().CreateAttachment("HatchbackTrunk");
MyNiva.GetInventory().CreateAttachment("HatchbackDoors_CoDriver");
@ -607,36 +647,36 @@ class AdminMenu //extends UIScriptedMenu
}
break;
case M_RPCs.M_Admin_Menu_TpToPos:
ctx.Read( stringParam );
cData = stringParam.param1;
if ( GetGame().IsServer() )
{
Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
if ( Admin != NULL)
{
vector position3 = "0 0 0";
m_TPLocations.Find( cData, position3 );
// case M_RPCs.M_Admin_Menu_TpToPos:
// ctx.Read( stringParam );
// cData = stringParam.param1;
// if ( GetGame().IsServer() )
// {
// Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
// if ( Admin != NULL)
// {
// vector position3 = "0 0 0";
// m_TPLocations.Find( cData, position3 );
vector ofixPlayerPos;
ofixPlayerPos[0] = position3[0];
ofixPlayerPos[2] = position3[2];
// vector ofixPlayerPos;
// ofixPlayerPos[0] = position3[0];
// ofixPlayerPos[2] = position3[2];
ofixPlayerPos = SnapToGround( ofixPlayerPos );
// ofixPlayerPos = SnapToGround( ofixPlayerPos );
Admin.SetPosition(ofixPlayerPos);
// Admin.SetPosition(ofixPlayerPos);
strMessage = "Teleported To Location: " + cData;
Msgparam = new Param1<string>( strMessage );
GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity);
// strMessage = "Teleported To Location: " + cData;
// Msgparam = new Param1<string>( strMessage );
// GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity);
}
}
// }
// }
if ( GetGame().IsClient() && GetGame().IsMultiplayer() )
{
}
break;
// if ( GetGame().IsClient() && GetGame().IsMultiplayer() )
// {
// }
// break;
case M_RPCs.M_Admin_Menu_Kill:
ctx.Read( stringParam );
@ -648,7 +688,7 @@ class AdminMenu //extends UIScriptedMenu
{
for ( int ig = 0; ig < players.Count(); ++ig )
{
PlayerBase Target = players.Get(ig);
PlayerBase Target = PlayerBase.Cast(players.Get(ig));
if ( Target.GetIdentity().GetName() == PlayerName )
{
Target.SetHealth(0);
@ -672,7 +712,7 @@ class AdminMenu //extends UIScriptedMenu
{
for ( int ig1 = 0; ig1 < players.Count(); ++ig1 )
{
PlayerBase Target1 = players.Get(ig1);
PlayerBase Target1 = PlayerBase.Cast(players.Get(ig1));
Target1.SetHealth(0);
}
}
@ -693,7 +733,7 @@ class AdminMenu //extends UIScriptedMenu
{
for ( int ig2 = 0; ig2 < players.Count(); ++ig2 )
{
PlayerBase Target2 = players.Get(ig2);
PlayerBase Target2 = PlayerBase.Cast(players.Get(ig2));
Target2.SetHealth( Admin.GetMaxHealth( "", "" ) );
Target2.SetHealth( "","Blood", Admin.GetMaxHealth( "", "Blood" ) );
Target2.GetStatEnergy().Add(250);
@ -718,7 +758,7 @@ class AdminMenu //extends UIScriptedMenu
{
for ( int ig3 = 0; ig3 < players.Count(); ++ig3 )
{
PlayerBase Target3 = players.Get(ig3);
PlayerBase Target3 = PlayerBase.Cast(players.Get(ig3));
Target3.RemoveAllItems();
}
}
@ -802,7 +842,7 @@ class AdminMenu //extends UIScriptedMenu
{
for ( int z1 = 0; z1 < players.Count(); ++z1 )
{
selectedPlayer = players.Get(z1);
selectedPlayer = PlayerBase.Cast(players.Get(z1));
selectedIdentity = selectedPlayer.GetIdentity();
if ( selectedIdentity.GetName() == MSGName )
{
@ -853,6 +893,22 @@ class AdminMenu //extends UIScriptedMenu
}
break;
case M_RPCs.M_Admin_Menu_Teleport_List_Request:
if ( GetGame().IsServer() )
{
Admin = GetServerMission().IsAdminID(sender.GetName(), sender.GetPlainId());
if ( Admin != NULL)
{
adminMenuManager.LoadTeleportLocations(AdminIdentity);;
}
}
if ( GetGame().IsClient() && GetGame().IsMultiplayer() )
{
}
break;
case M_RPCs.M_Admin_Menu_Player_Health_Request:
PlayerBase HealthPlayer;
@ -994,7 +1050,7 @@ class AdminMenu //extends UIScriptedMenu
for ( int i = 0; i < players.Count(); ++i )
{
PlayerBase Target = players.Get(i);
PlayerBase Target = PlayerBase.Cast(players.Get(i));
Target.SetPosition( AdminPos );
}
return i;

View File

@ -0,0 +1,130 @@
/*
DayZ SA Tomato Gui Admin tool for DayZ Standalone. Contact DayZ-SA-Tomato@Primary-Network.de
Copyright (C) 2018 DayZ-SA-Tomato
This file is part of DayZ SA Tomato.
DayZ SA Tomato is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
DayZ SA Tomato is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with DayZ SA Tomato. If not, see <https://www.gnu.org/licenses/>.
*/
class AdminMenuManager
{
static bool Config_Teleport = false;
static bool Config_Cam = false;
static ref map<string, vector> m_PlayerLocations;
static ref map<int, string> m_TeleportLocations;
protected string m_TeleportLocationsPath = "$CurrentDir:\\DayZ-Sa-Tomato\\Config\\List\\TeleportLocation.txt";
void ~AdminMenuManager()
{
}
void AdminMenuManager()
{
m_PlayerLocations = new map<string, vector>;
m_TeleportLocations = new map<int, string>;
//LoadTeleportLocations();
}
void Teleport()
{
if (Config_Teleport)
{
GetGame().RPCSingleParam( NULL, M_RPCs.M_TELEPORT, new Param1<vector>( GetCursorPos() ), false, NULL );
}
}
void CamTeleport( bool isSpectating, vector toPos )
{
if (Config_Cam)
{
Print("Send Cam RPC");
GetGame().RPCSingleParam( NULL, M_RPCs.M_SET_CAM, new Param2< bool, vector >( isSpectating, toPos ), false, NULL );
}
}
void MenuOpen()
{
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu, new Param1<vector>( GetCursorPos() ), false, NULL );
}
void SendTeleportList(PlayerIdentity admin)
{
string save;
string a =";";
vector v;
ScriptRPC TList = new ScriptRPC();
TList.Write(m_TeleportLocations);
TList.Send(NULL, M_RPCs.M_Admin_Menu_Teleport_List, false, admin);
// for (int i = 0; i < m_TeleportLocations.Count(); ++i)
// {
// TStringArray strs = new TStringArray;
// save = m_TeleportLocations.GetElement(i);
// save.Split(a, strs );
// v = strs.Get(1).ToVector();
// string Lname = strs.Get(0);
// Print("SendTeleportList Number : " + i + " Name : " + Lname + "Pos : " + strs.Get(1).ToVector());
// ScriptRPC TList = new ScriptRPC();
// TList.Write(Lname);
// TList.Write(v);
// TList.Send(NULL, M_RPCs.M_Admin_Menu_Teleport_List, false, admin);
//}
}
void LoadTeleportLocations(PlayerIdentity admin)
{
m_TeleportLocations.Clear();
FileHandle TpList = OpenFile(m_TeleportLocationsPath, FileMode.READ);
if (TpList != 0)
{
string a =";";
int i = 0;
string line_content = "";
while ( FGets(TpList,line_content) > 0 )
{
TStringArray strs = new TStringArray;
//string.Split(line_content, a, strs );
//line_content.Split(";", strs)
//vector v = strs.Get(1).ToVector();
m_TeleportLocations.Insert(i,line_content); //int Name, posvector
Print("Adding Number : " + i + " line : " + line_content + " To the Teleport List!");
i++;
}
CloseFile(TpList);
SendTeleportList(admin);
}
Print("TpList = NULL");
}
void AddTeleportLocations()
{
}
}

View File

@ -35,7 +35,7 @@ class DevCam
{
Print( " receive rpc dev cam is server");
ref PlayerBase player = GetServerMission().GetPlayerFromIdentity( sender );
ref PlayerBase player = PlayerBase.Cast(GetServerMission().GetPlayerFromIdentity( sender ));
Param2< bool, vector > camParams;
ctx.Read( camParams );

View File

@ -39,7 +39,7 @@ class DevTeleport
if ( GetGame().IsServer() )
{
ref PlayerBase player = GetServerMission().GetPlayerFromIdentity( sender );
ref PlayerBase player = PlayerBase.Cast(GetServerMission().GetPlayerFromIdentity( sender ));
// permission check - server mission file
// if has permissions send message back to client
if ( GetServerMission().IsAdmin( sender.GetName(), sender.GetPlainId()) )

View File

@ -24,6 +24,11 @@ class AdminMenuGui extends UIScriptedMenu
protected ref AdminMenuGuiSpawn m_SpawnTab;
protected ref AdminMenuGuiPlayer m_PlayerTab;
protected ref AdminMenuGuiMap m_MapTab;
protected ref AdminMenuGuiTeleport m_TeleportTab;
protected ref AdminMenuGuiTeleport m_ConfigTab;
protected ref AdminMenuGuiTeleport m_todo;
protected ref AdminMenuGuiTeleport m_todo2;
protected ref map<string, string> m_TestListS;
protected string m_TestListPath = "$CurrentDir:\\DayZ-SA-Tomato\\";
@ -104,6 +109,10 @@ class AdminMenuGui extends UIScriptedMenu
m_SpawnTab = new AdminMenuGuiSpawn( layoutRoot.FindAnyWidget( "Tab_1" ), this );
m_PlayerTab = new AdminMenuGuiPlayer( layoutRoot.FindAnyWidget( "Tab_2" ), this );
m_MapTab = new AdminMenuGuiMap( layoutRoot.FindAnyWidget( "Tab_3" ), this );
m_TeleportTab = new AdminMenuGuiTeleport( layoutRoot.FindAnyWidget( "Tab_4" ), this );
m_ConfigTab = new AdminMenuGuiTeleport( layoutRoot.FindAnyWidget( "Tab_5" ), this );
m_todo = new AdminMenuGuiTeleport( layoutRoot.FindAnyWidget( "Tab_5" ), this );
m_todo2 = new AdminMenuGuiTeleport( layoutRoot.FindAnyWidget( "Tab_5" ), this );
m_Back = ButtonWidget.Cast( layoutRoot.FindAnyWidget( "back" ) );
@ -147,6 +156,13 @@ class AdminMenuGui extends UIScriptedMenu
return ok;
}
//TeleportTab
if ( w.GetName().Contains("_Teleport_") )
{
ok = m_TeleportTab.Click(w, x, y, button);
return ok;
}
//CommandTab
if ( w.GetName().Contains("_Command_") )
{
@ -193,10 +209,20 @@ class AdminMenuGui extends UIScriptedMenu
break;
}
case 3:
{
m_TeleportTab.Focus();
break;
}
case 4:
{
m_MapTab.Focus();
break;
}
case 5:
{
m_ConfigTab.Focus();
break;
}
}
}

View File

@ -1,58 +0,0 @@
/*
DayZ SA Tomato Gui Admin tool for DayZ Standalone. Contact DayZ-SA-Tomato@Primary-Network.de
Copyright (C) 2018 DayZ-SA-Tomato
This file is part of DayZ SA Tomato.
DayZ SA Tomato is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
DayZ SA Tomato is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with DayZ SA Tomato. If not, see <https://www.gnu.org/licenses/>.
*/
class AdminMenuManager
{
static bool Config_Teleport = false;
static bool Config_Cam = false;
static ref map<string, vector> m_PlayerLocations;
void ~AdminMenuManager()
{
}
void AdminMenuManager()
{
m_PlayerLocations = new map<string, vector>; //name of town, pos
}
void Teleport()
{
if (Config_Teleport)
{
GetGame().RPCSingleParam( NULL, M_RPCs.M_TELEPORT, new Param1<vector>( GetCursorPos() ), false, NULL );
}
}
void CamTeleport( bool isSpectating, vector toPos )
{
if (Config_Cam)
{
Print("Send Cam RPC");
GetGame().RPCSingleParam( NULL, M_RPCs.M_SET_CAM, new Param2< bool, vector >( isSpectating, toPos ), false, NULL );
}
}
void MenuOpen()
{
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu, new Param1<vector>( GetCursorPos() ), false, NULL );
}
}

View File

@ -112,7 +112,7 @@ class AdminMenuGuiPlayer extends ScriptedWidgetEventHandler
if( ( w == m_btn_Player_TpMe ) )
{
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_TpMe, new Param1<string>(PlayerName), false, NULL );
LogD("AdminMenuPlayer - Click - m_btn_Player_TpMe Playername : " + PlayerName)
LogD("AdminMenuPlayer - Click - m_btn_Player_TpMe Playername : " + PlayerName);
return true;
}
@ -269,7 +269,7 @@ class AdminMenuGuiPlayer extends ScriptedWidgetEventHandler
PlayerIdentity selectedIdentity;
for ( int a = 0; a < players.Count(); ++a )
{
selectedPlayer = players.Get(a);
selectedPlayer = PlayerBase.Cast(players.Get(a));
selectedIdentity = selectedPlayer.GetIdentity();
if ( selectedIdentity.GetName() == GetCurrentSelection() )
{

View File

@ -56,7 +56,7 @@ class AdminMenuGuiSpawn extends ScriptedWidgetEventHandler
m_item_widget = ItemPreviewWidget.Cast( m_Root.FindAnyWidget( "ItemPrev" ) );
m_Spawn_QuantityItem = EditBoxWidget.Cast( m_Root.FindAnyWidget( "quantity_items" ) );
m_Spawn_editBox = m_Root.FindAnyWidget("className_spawner_box");
m_Spawn_editBox = EditBoxWidget.Cast( m_Root.FindAnyWidget("className_spawner_box") );
UpdateList( "All" );
}
@ -108,7 +108,7 @@ class AdminMenuGuiSpawn extends ScriptedWidgetEventHandler
}
else if ( w == m_Spawn_btnSpawnGround )
{
EntityAI oObj = g_Game.CreateObject( strSelection, GetGame().GetPlayer().GetPosition(), false, ai );
EntityAI oObj = EntityAI.Cast(g_Game.CreateObject( strSelection, GetGame().GetPlayer().GetPosition(), false, ai ));
text = m_Spawn_QuantityItem.GetText();
//RPC Build and Send
ScriptRPC rpc = new ScriptRPC();
@ -220,7 +220,7 @@ class AdminMenuGuiSpawn extends ScriptedWidgetEventHandler
if ( w == m_classList )
{
EntityAI item;
item = g_Game.CreateObject( GetCurrentSelection(), vector.Zero, false, false, false );
item = EntityAI.Cast(g_Game.CreateObject( GetCurrentSelection(), vector.Zero, false, false, false ));
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Spawn_ItemPrev, new Param1<string>( GetCurrentSelection() ), false, NULL );
if (item)
{
@ -422,7 +422,7 @@ class AdminMenuGuiSpawn extends ScriptedWidgetEventHandler
//delete m_item_widget;
if (item == NULL)
{
item = GetGame().CreateObject( "WaterBottle", vector.Zero, false, false );
item = EntityAI.Cast(GetGame().CreateObject( "WaterBottle", vector.Zero, false, false ));
}
if (!m_item_widget)
{

View File

@ -0,0 +1,231 @@
/*
DayZ SA Tomato Gui Admin tool for DayZ Standalone. Contact DayZ-SA-Tomato@Primary-Network.de
Copyright (C) 2018 DayZ-SA-Tomato
This file is part of DayZ SA Tomato.
DayZ SA Tomato is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
DayZ SA Tomato is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with DayZ SA Tomato. If not, see <https://www.gnu.org/licenses/>.
*/
class AdminMenuGuiTeleport extends ScriptedWidgetEventHandler
{
protected Widget m_Root;
protected AdminMenuGui m_Menu;
protected ref map<int, ref Param2<string, string>> m_TextMap;
protected ButtonWidget m_btn_Teleport_Teleport;
protected ButtonWidget m_btn_Teleport_Reload;
protected ButtonWidget m_btn_Teleport_Add_Location;
ref AdminMenuManager adminMenuManager;
protected EditBoxWidget m_Text_Teleport_Loacation_Name;
static ref map<string, string> m_TeleportLocations;
static ref map<int, string> m_TeleportLocations_old;
TextListboxWidget m_List_Teleport_Location;
void AdminMenuGuiTeleport( Widget parent, AdminMenuGui menu )
{
m_Root = GetGame().GetWorkspace().CreateWidgets( "com\\DayZ-SA-Tomato\\scripts\\5_Mission\\core\\modules\\GUI\\Layouts\\Admin_Teleport.layout", parent );
adminMenuManager = new AdminMenuManager();
m_Menu = menu;
GetDayZGame().Event_OnRPC.Insert( this.ReceiveRPC );
m_TeleportLocations = new map<string, string>;
m_TeleportLocations_old = new map<int, string>;
m_List_Teleport_Location = TextListboxWidget.Cast( m_Root.FindAnyWidget( "List_Teleport_Location" ) );
m_Text_Teleport_Loacation_Name = EditBoxWidget.Cast( m_Root.FindAnyWidget( "Text_Teleport_Loacation_Name" ) );
m_btn_Teleport_Teleport = ButtonWidget.Cast( m_Root.FindAnyWidget( "btn_Teleport_Teleport" ) );
m_btn_Teleport_Reload = ButtonWidget.Cast( m_Root.FindAnyWidget( "btn_Teleport_Reload" ) );
m_btn_Teleport_Add_Location = ButtonWidget.Cast( m_Root.FindAnyWidget( "btn_Teleport_Add_Location" ) );
m_List_Teleport_Location.ClearItems();
//TpLocations;
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Teleport_List_Request, new Param1<string>(""), false, NULL );
}
void LogD(string s)
{
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Log_Debug, new Param1<string>( s ), false, NULL );
}
bool Click(Widget w, int x, int y, int button)
{
PlayerBase player = PlayerBase.Cast( GetGame().GetPlayer() );
string TpLocation = GetCurrentSelection();
if (player)
{
if( ( w == m_btn_Teleport_Teleport ) )
{
string TpDest;
m_TeleportLocations.Find(TpLocation, TpDest);
Print("TpLocation : " + TpLocation + " Tp Dest : " + TpDest);
//GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_TpMeToPos, new Param1<string>(TpDest.ToString()), false, NULL );
ScriptRPC TListDst = new ScriptRPC();
TListDst.Write(TpDest);
TListDst.Send(NULL, M_RPCs.M_Admin_Menu_TpMeToPos, false, NULL);
return true;
}
if( ( w == m_btn_Teleport_Reload ) )
{
m_TeleportLocations.Clear();
m_List_Teleport_Location.ClearItems();
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Teleport_List_Request, new Param1<string>(""), false, NULL );
}
if( ( w == m_btn_Teleport_Add_Location ) )
{
m_List_Teleport_Location.ClearItems();
GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Teleport_List_Request, new Param1<string>(""), false, NULL );
}
}
return true;
}
void ~AdminMenuGuiTeleport()
{
m_List_Teleport_Location.ClearItems();
}
void Focus()
{
}
void AddLocationToFile(string LocationName)
{
}
override bool OnFocus( Widget w, int x, int y )
{
if( m_Menu )
m_Menu.OnFocus( w, x, y );
if( w )
{
Param2<string, string> p = m_TextMap.Get( w.GetUserID() );
if( p )
{
return true;
}
}
return ( w != null );
}
bool stop = false;
void ReceiveRPC( PlayerIdentity sender, Object target, int rpc_type, ParamsReadContext ctx )
{
int ListCount = 0;
switch(rpc_type)
{
case M_RPCs.M_Admin_Menu_Teleport_List:
string PosName;
vector Pos1; //Vector Postition
// ctx.Read(PosName);
// ctx.Read(Pos1);
ctx.Read(m_TeleportLocations_old);
//ctx.Read(m_TeleportLocations);
if ( GetGame().IsServer() )
{
}
if ( GetGame().IsClient() && GetGame().IsMultiplayer() )
{
for (int i = 0; i < m_TeleportLocations_old.Count(); ++i)
{
ListCount ++;
string save;
string a =";";
vector v;
TStringArray strs = new TStringArray;
save = m_TeleportLocations_old.GetElement(i);
save.Split(a, strs );
v = strs.Get(1).ToVector();
string Lname = strs.Get(0);
if (m_TeleportLocations.Contains(Lname))
{
return;
}
m_TeleportLocations.Insert(Lname, strs.Get(1)); //int Name, posvector
m_List_Teleport_Location.AddItem( Lname, NULL, 0 );
Print("SendTeleportList Number : " + i + " Name : " + Lname + "Pos : " + strs.Get(1));
}
// Print("Adding : PosName : " + PosName + " Pos1 : " + Pos1);
// m_TeleportLocations.Insert(PosName, Pos1); //int Name, posvector
// m_List_Teleport_Location.AddItem( PosName, NULL, 0 );
}
break;
}
}
// void PlayerSelect()
// {
// array<Man> players = new array<Man>;
// GetGame().GetPlayers( players );
// PlayerBase selectedPlayer;
// PlayerIdentity selectedIdentity;
// for ( int a = 0; a < players.Count(); ++a )
// {
// selectedPlayer = players.Get(a);
// selectedIdentity = selectedPlayer.GetIdentity();
// if ( selectedIdentity.GetName() == GetCurrentSelection() )
// {
// GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Player_Health_Request, new Param1<PlayerBase>(selectedPlayer), false, NULL );
// GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Player_Stamina_Request, new Param1<string>(selectedIdentity.GetName()), false, NULL );
// }
// }
// }
void PlayerList()
{
// m_PlayerList.ClearItems();
// array<Man> players = new array<Man>;
// GetGame().GetPlayers( players );
// for (int i = 0; i < players.Count(); ++i)
// {
// string msg = "AdminMenuPlayer - PlayerList() Adding " + players.Get(i).GetIdentity().GetName() + " To List";
// GetGame().RPCSingleParam( NULL, M_RPCs.M_Admin_Menu_Log_Info, new Param1<string>( msg ), false, NULL );
// m_PlayerList.AddItem( players.Get(i).GetIdentity().GetName(), NULL, 0 );
// }
}
string GetCurrentSelection()
{
if ( m_List_Teleport_Location.GetSelectedRow() != -1 )
{
string result;
m_List_Teleport_Location.GetItemText( m_List_Teleport_Location.GetSelectedRow(), 0, result );
return result;
}
return "";
}
void Message( string txt )
{
GetGame().GetMission().OnEvent(ChatMessageEventTypeID, new ChatMessageEventParams(0, "", txt, ""));
}
}

View File

@ -0,0 +1,97 @@
FrameWidgetClass rootFrame {
position 10 10
size 1400 800
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
{
FrameWidgetClass command_settings_root {
ignorepointer 1
size 1 1
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 0
{
TextWidgetClass TextWidget0 {
position 0 10
size 1 50
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 1
style Bold
text "Config"
"exact text" 0
"size to text h" 0
"size to text v" 0
"text halign" center
"text valign" center
}
PanelWidgetClass PanelWidget0 {
color 0.9333 0 0.0784 1
position 0 75
size 0.9 3.5
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 1
style rover_sim_colorable
}
ButtonWidgetClass btn_Config_Refresh_Admin {
position 1100 150
size 256.392 48
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Refresh Admins"
text_proportion 0.8
}
TextWidgetClass TextWidget2 {
position 40 90
size 167.963 49.9234
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Admins"
}
ButtonWidgetClass btn_Config_Add_Admin {
position 800 150
size 256.38998 50
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Add Steam64ID"
text_proportion 0.9
switch normal
}
PanelWidgetClass PanelWidget1 {
color 0.9333 0 0.0784 1
position 0 223.85101
size 0.9 3.5
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 1
style rover_sim_colorable
}
EditBoxWidgetClass Text_Config_Admin_ID {
position 40 150
size 734.37097 48
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
style ServerBrowser
}
}
}
}
}

View File

@ -24,7 +24,7 @@ FrameWidgetClass settings_menu_root {
clipchildren 0
ignorepointer 1
position 80 40
size 710 60
size 1350 60
hexactpos 1
vexactpos 1
hexactsize 1
@ -69,7 +69,7 @@ FrameWidgetClass settings_menu_root {
GridSpacerWidgetClass Tab_Control_Container {
ignorepointer 1
position 0 0
size 710 1
size 1050 1
hexactpos 1
vexactpos 1
hexactsize 1
@ -251,11 +251,68 @@ FrameWidgetClass settings_menu_root {
}
}
}
PanelWidgetClass Tab_Control_4 {
visible 1
clipchildren 1
position 0 0
size 170 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
priority 200
userID 0
style blank
"no focus" 1
"next down" "XComboBoxWidget1"
{
TextWidgetClass Tab_Control_1_Title0 {
visible 1
ignorepointer 1
position 0 0
size 1 0.48
halign center_ref
valign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 0
priority 250
text "Teleport"
font "gui/fonts/sdf_MetronLight72"
"text halign" center
"text valign" center
}
ImageWidgetClass Tab_Control_1_Background0 {
visible 0
disabled 0
inheritalpha 0
ignorepointer 1
color 1 1 1 0.7843
position -160 0
size 710 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
draggable 0
imageTexture "{5A89D58DD2276E85}Gui/textures/SerratedBlack2.edds"
mode blend
"src alpha" 1
"no wrap" 0
stretch 1
"flip u" 0
"flip v" 0
filter 1
nocache 0
}
}
}
PanelWidgetClass Tab_Control_3 {
visible 1
clipchildren 1
position 0 0
size 220 1
size 170 1
hexactpos 1
vexactpos 1
hexactsize 1
@ -308,6 +365,177 @@ FrameWidgetClass settings_menu_root {
}
}
}
PanelWidgetClass Tab_Control_5 {
visible 1
clipchildren 1
position 0 0
size 170 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
priority 200
userID 0
style blank
"no focus" 1
"next down" "XComboBoxWidget1"
{
TextWidgetClass Tab_Control_1_Title1 {
visible 1
ignorepointer 1
position 0 0
size 1 0.48
halign center_ref
valign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 0
priority 250
text "Config"
font "gui/fonts/sdf_MetronLight72"
"text halign" center
"text valign" center
}
ImageWidgetClass Tab_Control_1_Background1 {
visible 0
disabled 0
inheritalpha 0
ignorepointer 1
color 1 1 1 0.7843
position -160 0
size 710 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
draggable 0
imageTexture "{5A89D58DD2276E85}Gui/textures/SerratedBlack2.edds"
mode blend
"src alpha" 1
"no wrap" 0
stretch 1
"flip u" 0
"flip v" 0
filter 1
nocache 0
}
}
}
PanelWidgetClass Tab_Control_6 {
visible 0
clipchildren 1
position 0 0
size 170 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
priority 200
userID 0
style blank
"no focus" 1
"next down" "XComboBoxWidget1"
{
TextWidgetClass Tab_Control_1_Title2 {
visible 1
ignorepointer 1
position 0 0
size 1 0.48
halign center_ref
valign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 0
priority 250
text "Config"
font "gui/fonts/sdf_MetronLight72"
"text halign" center
"text valign" center
}
ImageWidgetClass Tab_Control_1_Background2 {
visible 0
disabled 0
inheritalpha 0
ignorepointer 1
color 1 1 1 0.7843
position -160 0
size 710 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
draggable 0
imageTexture "{5A89D58DD2276E85}Gui/textures/SerratedBlack2.edds"
mode blend
"src alpha" 1
"no wrap" 0
stretch 1
"flip u" 0
"flip v" 0
filter 1
nocache 0
}
}
}
PanelWidgetClass Tab_Control_7 {
visible 0
clipchildren 1
position 0 0
size 170 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
priority 200
userID 0
style blank
"no focus" 1
"next down" "XComboBoxWidget1"
{
TextWidgetClass Tab_Control_1_Title3 {
visible 1
ignorepointer 1
position 0 0
size 1 0.48
halign center_ref
valign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 0
priority 250
text "Config"
font "gui/fonts/sdf_MetronLight72"
"text halign" center
"text valign" center
}
ImageWidgetClass Tab_Control_1_Background3 {
visible 0
disabled 0
inheritalpha 0
ignorepointer 1
color 1 1 1 0.7843
position -160 0
size 710 1
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 0
draggable 0
imageTexture "{5A89D58DD2276E85}Gui/textures/SerratedBlack2.edds"
mode blend
"src alpha" 1
"no wrap" 0
stretch 1
"flip u" 0
"flip v" 0
filter 1
nocache 0
}
}
}
}
}
}
@ -407,12 +635,34 @@ FrameWidgetClass settings_menu_root {
hexactsize 1
vexactsize 1
}
FrameWidgetClass Tab_4 {
visible 0
ignorepointer 1
position 0 110
size 1400 800
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
}
FrameWidgetClass Tab_5 {
visible 0
ignorepointer 1
position 0 110
size 1400 800
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
}
}
}
TextWidgetClass SettingsTextWidget {
ignorepointer 1
position 0.05 40
size 0.38295 50
position 0.00178 2.4828
size 1 37.15
halign right_ref
hexactpos 0
vexactpos 1

View File

@ -0,0 +1,115 @@
FrameWidgetClass rootFrame {
position 10 10
size 1400 800
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
{
FrameWidgetClass command_settings_root {
ignorepointer 1
size 1 1
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 0
{
TextWidgetClass TextWidget0 {
position 0 10
size 1 50
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 1
style Bold
text "Teleport"
"exact text" 0
"size to text h" 0
"size to text v" 0
"text halign" center
"text valign" center
}
PanelWidgetClass PanelWidget0 {
color 0.9333 0 0.0784 1
position 0 75
size 0.9 3.5
halign center_ref
hexactpos 1
vexactpos 1
hexactsize 0
vexactsize 1
style rover_sim_colorable
}
PanelWidgetClass PanelWidget1 {
visible 0
position 20 160
size 400 570
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
style rover_sim_black_2
}
TextListboxWidgetClass List_Teleport_Location {
position 26.6539 160
size 386.76901 570
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
style Editor
lines 20
}
ButtonWidgetClass btn_Teleport_Add_Location {
position 450 680.46002
size 430 48
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Add Current Location"
}
ButtonWidgetClass btn_Teleport_Teleport {
position 450 160
size 431.70602 48
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Teleport to Location"
}
ButtonWidgetClass btn_Teleport_Reload {
position 20 740
size 403.58899 45
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Reload Locations from File"
}
EditBoxWidgetClass Text_Teleport_Loacation_Name {
position 904.15796 680
size 430 48
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
style ServerBrowser
text "Location_Name"
}
TextWidgetClass TextWidget1 {
position 20 100
size 400 48
hexactpos 1
vexactpos 1
hexactsize 1
vexactsize 1
text "Locations"
"text halign" center
"text valign" center
}
}
}
}
}

View File

@ -1,41 +0,0 @@
class CfgMods
{
class DayZSATomato
{
dir = "DayZ-SA-Tomato";
picture = "";
action = "";
hideName = 1;
hidePicture = 1;
name = "DayZ-SA-Tomato";
credits = "";
author = "DayZ-SA-Tomato";
authorID = "0";
version = "1.0";
extra = 0;
type = "mod";
dependencies[] = {"Game", "World", "Mission"};
class defs
{
class gameScriptModule
{
value = "";
files[] = {"com/DayZ-SA-Tomato/scripts/3_Game"};
};
class worldScriptModule
{
value = "";
files[] = {"com/DayZ-SA-Tomato/scripts/4_World"};
};
class missionScriptModule
{
value = "";
files[] = {"com/DayZ-SA-Tomato/scripts/5_Mission"};
};
}
};
};