Unfaithful
Joined: 11 Jun 2007 Posts: 38
|
Posted: Mon Jul 30, 2007 2:28 pm Post subject: Some Tool |
|
|
Maybe it will be usefull for someone
| Code: | //////////////////////////////////////////////////////////////////////
//Drac0 30-07.2007
//Komenda do kopiowania zawratosci kufrow / bankow do cfg
//Korzystajac z roznego rozadzju parametrow mozemy zapisywa/tworzyc itemy
// 1 - SSkrzynka Bankowa
// 2 - Kufer/plecak
// 3 - Zczytywanie z configa
// Po jednorazowym uzyciu nalezy wyczyscic configa ;]]
//////////////////////////////////////////////////////////////////////
//ENGLISH VERSION
//Command was created to move items from backup to real data if someone lost his bank
// 1 - Bank box
// 2 - Container
// 3 - Read from config and create
// Just for 1 use then u must clean up your config file.
//////////////////////////////////////////////////////////////////////
use os;
use uo;
use cfgfile;
use basic;
include "util/bank";
program textcmd_wipebank(who,parm)
if(!parm)
//SendSysMessage(who,"1- kopiowanie banku, 2- kopiowanie pojemnika , 3- tworzenie z configa ");
SendSysmessage(who,"1 for bank, 2 for container, 3 for create");
endif
if(parm == "1")
kopiujbank(who);
elseif(parm == "2")
kopiujpojemnik(who);
elseif(parm == "3")
stworz(who);
endif
endprogram
function kopiujbank(who)
//Sendsysmessage(who,"Wskaz gracza ktorego skrzynke bankowa chcesz skopiowac");
Sendsysmessage(who,"Choose player");
var tgt := Target(who);
var bankbox := FindBankBox(tgt);
var elem := array;
var ilosc := 1;
foreach item in EnumerateItemsInContainer(bankbox)
elem:={ };
elem.append({"NAME", item.desc});
elem.append({"ID", item.objtype});
elem.append({"COLOR", item.color});
elem.append({"USES", item.usescript});
elem.append({"EQUS", item.equipscript});
elem.append({"UEQUS", item.unequipscript});
elem.append({"NB", item.newbie});
elem.append({"GR", item.graphic});
elem.append({"AM", item.amount});
elem.append({"WG", item.weight});
elem.append({"PROP", pack(propy(who,item))});
AppendConfigFileElem("itemtool", "ITEMEK", "ITEM "+ilosc, elem);
ilosc += 1;
sleepms(5);
endforeach
endfunction
function stworz(who);
var itemki := ReadConfigFile("itemtool");
var plecak := CreateItemincontainer(who.backpack,"backpack",1);
var yx := GetConfigStringKeys(itemki);
var hmm;
var obj;
var licznik := 1;
foreach name in yx
if((licznik > 125) || (plecak.weight > 50000))
MoveObjectToLocation(plecak,who.x,who.y,who.z,"britannia",MOVEOBJECT_FORCELOCATION);
plecak := CreateItemincontainer(who.backpack,"backpack",1);
licznik := 0;
endif
hmm := itemki[name];
if(hmm)
if(Cint(hmm.wg) > 9000)
obj := CreateItemAtLocation(who.x,who.y,who.z,hmm.id,hmm.am,who.realm);
else
obj := Createitemincontainer(plecak,hmm.id,hmm.am);
endif
obj.color := hmm.color;
obj.usescript := hmm.uses;
obj.equipscript := hmm.equs;
obj.unequipscript := hmm.uequs;
obj.newbie := hmm.newbie;
obj.graphic := hmm.gr;
obj.desc := hmm.name;
if(hmm.prop)
var propki := array;
propki := unpack(hmm.prop);
var dlugosc := propki.size();
var i,h;
h := 2;
for(i := 1; i <= dlugosc; i:=i+1)
SetObjProperty(obj,propki[i][h-1],propki[i][h]);
endfor
endif
endif
licznik := licznik +1;
sleepms(5);
endforeach
endfunction
function kopiujpojemnik(who);
//Sendsysmessage(who,"Wskaz pojemnik ktory chcesz skopiowac");
SendSysMessage(who,"Choose container");
var tgt := Target(who);
var elem := array;
var ilosc := 1;
foreach item in EnumerateItemsInContainer(tgt)
elem:={ };
elem.append({"NAME", item.desc});
elem.append({"ID", item.objtype});
elem.append({"COLOR", item.color});
elem.append({"USES", item.usescript});
elem.append({"EQUS", item.equipscript});
elem.append({"UEQUS", item.unequipscript});
elem.append({"NB", item.newbie});
elem.append({"GR", item.graphic});
elem.append({"AM", item.amount});
elem.append({"PROP", pack(propy(who,item))});
AppendConfigFileElem("itemtool", "ITEMEK", "ITEM "+ilosc, elem);
ilosc += 1;
sleepms(5);
endforeach
endfunction
function propy(who,item)
var araj := array;
foreach propname in GetObjPropertyNames(item)
araj.append({propname,GetObjProperty(item, propname)});
sleepms(2);
endforeach
return araj;
endfunction
|
|
|