DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
OpenDir.c
См. документацию.
1[WorkbenchPluginAttribute("Open Dir", "Just for testing", "ctrl+-", "", {"ScriptEditor"})]
3{
4 override void Run()
5 {
6 ScriptEditor mod = Workbench.GetModule("ScriptEditor");
7 if (mod)
8 {
9 string file;
10 string absPath;
11 if (mod.GetCurrentFile(file) && Workbench.GetAbsolutePath(file, absPath))
12 {
13 if (absPath.Length() < 2) return;
14
15 absPath.Replace("\\", "/");
16
17 if (absPath[1] != ":")
18 {
19 string cwd;
20 Workbench.GetCwd(cwd);
21 absPath = cwd + "/" + absPath;
22 }
23
24 int index = absPath.IndexOf("/");
25 int last_index = index;
26
27 while(index != -1)
28 {
29 last_index = index;
30 index = absPath.IndexOfFrom(last_index + 1, "/");
31 }
32
33 if (last_index == -1) return;
34
35 string path = absPath.Substring(0, last_index);
36 string command;
37 command.Replace("$path", path);
38 //Print(path);
39 //Workbench.RunCmd(command);
40 Workbench.RunCmd("cmd /c \"start " + path +"\"");
41 }
42 }
43 }
44
45 override void Configure()
46 {
47 Workbench.ScriptDialog("Configure OpenDir", "Usage: \n$path - will be replaced with file name", this);
48 }
49
50 [ButtonAttribute("OK")]
51 void OkButton() {}
52}
53
RestartDayzTool DayZTool WorkbenchPluginAttribute("DayZ Run", "Just for testing", "ctrl+2", "", {"ScriptEditor"})
Определения DayZTools.c:62
string path
Определения OptionSelectorMultistate.c:142
Определения workbenchApi.c:109
override void Run()
Определения OpenDir.c:4
void OkButton()
Определения OpenDir.c:51
override void Configure()
Определения OpenDir.c:45
Определения OpenDir.c:3
proto external bool GetCurrentFile(out string filename)
Определения workbenchApi.c:30
static proto native int RunCmd(string command, bool wait=false)
static proto void GetCwd(out string currentDir)
static proto native WBModuleDef GetModule(string type)
static proto int ScriptDialog(string caption, string text, Class data)
static proto bool GetAbsolutePath(string relativePath, out string absPath)
Определения workbenchApi.c:7
Определения workbenchApi.c:102
proto native int Length()
Returns length of string.
proto int Replace(string sample, string replace)
Replace all occurrances of 'sample' in 'str' by 'replace'.
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.
proto native int IndexOfFrom(int start, string sample)
Finds 'sample' in 'str' from 'start' position. Returns -1 when not found.
proto native int IndexOf(string sample)
Finds 'sample' in 'str'. Returns -1 when not found.