<?php
$macro=$cm;
if ($macro) { //macro=obj|objz|to|toz|name/..., macrol=obj|objz|to|toz
if ($macro=="save") { // сохраняем
include("f_blok.dat");
if (!$name) msg("<small><b>Не указано имя макроса, используйте англ. буквы.</b></small>","Макросы",0);
if ($num<1 || $num>8) msg("<small><b>Диапазон номера от 1 до 8</b></small>","Макросы",0);
if (!isset($l_i[$loc][$login]["macro"])) $m=array("","","","","","","",""); else $m=explode("/",$l_i[$loc][$login]["macro"]);
if (!isset($l_i[$loc][$login]["macrol"])) $ml=array(); else $ml=explode("|",$l_i[$loc][$login]["macrol"]);
if ($obj=="curr") {$obj=$ml[0];$objz=$ml[1];}
if ($to=="curr") {$to=$ml[2];$toz=$ml[3];}
if ($to=="none") {$to="";$toz="";}
$name=substr(preg_replace('/\W/',"",$name),0,9);
$m[$num-1]="$obj|$objz|$to|$toz|$name";
if(strlen($l_i[$loc][$login]["macro"])>300) msg("<small><b>Слишком много или слишком длинные макросы</b></small>");
$l_i[$loc][$login]["macro"]=implode("/",$m);
msg("<small><b>Макрос с именем $name сохранен.</b></small>","Макросы",0);
}
if ($macro=="del") { // удаляем
if ($num<1 || $num>8) msg("<small><b>Диапазон номера от 1 до 8</b></small>");
if (!isset($l_i[$loc][$login]["macro"])) $m=array("","","","","","","",""); else $m=explode("/",$l_i[$loc][$login]["macro"]);
unset($m[$num-1]);
$l_i[$loc][$login]["macro"]=implode("/",$m);
msg("<small><b>Макрос с номером $num удален.</b></small>","Макросы",0);
}
if ($macro=="new") { // форма для нового макроса
$stmp="<small><b>Действие:</b></small><br/>
<select name=\"obj\" value=\"curr\">\n<option value=\"curr\">Текущее</option>\n<option value=\"last\">Последнее</option></select>
<small><b>Цель:</b></small><br/>
<select name=\"to\" value=\"curr\">\n<option value=\"curr\">Текущая</option>\n<option value=\"last\">Последняя</option>\n<option value=\"none\">Вручную</option></select>
<small><b>Имя макроса:</b></small><br/>
<input name=\"name\" value=\"macro\" />
<br/><small><b>Номер:</b></small>
<select name=\"num\" value=\"1\">
";
if (!isset($l_i[$loc][$login]["macro"])) $m=array("","","","","","","",""); else $m=explode("/",$l_i[$loc][$login]["macro"]);
for($i=1;$i<9;$i++) {
if ($m[$i-1]) {$mn=explode("|",$m[$i-1]); $mn=$mn[4];} else $mn="Пусто";
$stmp.="\n<option value=\"$i\">$i: $mn</option>";
}
$stmp.="</select>
<br/><small><b><anchor>Сохранить<go href=\"$PHP_SELF?sid=$sid&cm=save&obj=$(obj)&to=$(to)&name=$(name)&num=$(num)\"/></anchor></b></small>
<br/>
<small><b><anchor>Удалить<go href=\"$PHP_SELF?sid=$sid&cm=del&num=$(num)\"/></anchor></b></small>
<br/><br/><small><b>
<anchor>Помощь<go href=\"$PHP_SELF?sid=$sid&cm=help\"/></anchor></b></small>
";
msg($stmp,"Макросы",0);
}
if ($macro=="help") msg("<small><b>Чтобы записать новый макрос, совершите любое действие, например, используйте навык или заклинание и выберите в меню \"макросы\".<br/>\"Текущее\" - это совершенное действие и текущая цель.<br/>\"Последнее\" - последнее действие или цель перед вызовом макроса.<br/>\"Вручную\" - при вызове макроса надо будет вручную указать на кого применить.</b></small>","Макросы",0);
if ($macro<1 || $macro>8) msg("<small><b>Макрос может быть от 1 до 8</b></small>","Макросы",0);
}