forked from reyhard/o2scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
decapitator.bio2s
58 lines (48 loc) · 1.48 KB
/
decapitator.bio2s
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include "std\lodNames.inc"
#include "std\o2config.inc"
#include "std\paramFile.inc"
#include "CheckMat.inc.bio2s"
#include "std\flags.inc"
scopeName "CheckAll";
console = openStandardIO;
if (typename this=="STRING") then
{
p3d=newLODObject;
p3dname=this;
if (!(p3d loadP3d this)) then { console<<"Unable to open:"<<this<<eoln;BreakTo "CheckAll";};
runFromO2=false;
texpath=((splitPath p3dname) @ 0);
console<<"----------------------------------------------------------------------"<<eoln;
console<<"Checking file: "<<p3dname<<eoln;
}
else
{
p3dname=nameof this;
p3dname=splitPath p3dname;
p3dname=p3dname @ 2 + p3dname @ 3;
runFromO2=true;
p3d=this;
texpath=o2GetConfig IDS_CFGPATHFORTEX;
console<<"--------- Checking "<<p3dname<<" ------"<<eoln;
};
_found = false;
_LODs = getObjects p3d;
_resolutions = getResolutions p3d;
_success = p3d setActive (p3d findLevel 10000);
_currentLOD = _LODs select (activeLevel p3d);
{
if (_x == "Head") then
{
_sel = _currentLOD loadSelection _x;
deleteSelected _sel;
_currentLOD deleteSelection _x;
_found = true;
};
}foreach (getSelections _currentLOD);
if (_found and !runFromO2) then
{
console<< eoln << p3dname << eoln<<" --------- Texture or material found & replaced ------" << str(_LODs) <<eoln << eoln;
if (!save p3d)then {console <<"unable to SAVE "<<p3dname<<eoln;};
}else{
console<< p3dname <<" --------- No textures or materials found ------" << eoln << eoln;
};