Interior Decorator v4.0
Posted: Sat Dec 31, 2011 12:54 am
Version 4.0
Added in triggerevent to call a nother js script for the turn method.
Moved gump into its own function so it can be recalled back up so you don't have to keep clicking tool.
Added in a better way to raise up and down the z of a item
do not forget to grab the ondrop.js
Then don't forget to add this lines to your jse_fileassociations
5071=custom/interiordecorator.js
5089=custom/ondrop.js
have a good day
Version 3.0
Changed the hight a item can set to per osi.
Combined some lines of code to shrink it down some.
version 2.0
1 Added 1000 weight check if its 100 stones wont move up or down or turn
2 Changed the lockdown tag to be like OSI if the item isnt locked down you can't do anything to it.
3 Added clico numbers to the gump instead of html.
Only thing missing is turning House Addons
I know uox doesn't have this yet i figured would be nice to have so we could let our players move items in there house without having to help them
interiordecorator.js
ondrop.js
Added in triggerevent to call a nother js script for the turn method.
Moved gump into its own function so it can be recalled back up so you don't have to keep clicking tool.
Added in a better way to raise up and down the z of a item
do not forget to grab the ondrop.js
Then don't forget to add this lines to your jse_fileassociations
5071=custom/interiordecorator.js
5089=custom/ondrop.js
have a good day
Version 3.0
Changed the hight a item can set to per osi.
Combined some lines of code to shrink it down some.
version 2.0
1 Added 1000 weight check if its 100 stones wont move up or down or turn
2 Changed the lockdown tag to be like OSI if the item isnt locked down you can't do anything to it.
3 Added clico numbers to the gump instead of html.
Only thing missing is turning House Addons
I know uox doesn't have this yet i figured would be nice to have so we could let our players move items in there house without having to help them
interiordecorator.js
function onUseChecked ( pUser, iUsed )
{
if( iUsed.container != null )
{
var persMulti = FindMulti( pUser.x, pUser.y, pUser.z, pUser.worldnumber );
var itemMulti = FindMulti( iUsed.x, iUsed.y, iUsed.z, iUsed.worldnumber );
if( persMulti != itemMulti )
{
var ret=displaygump( iUsed, pUser );
}
else
pUser.SysMessage( "You must be in your house to do this." );
return false;
}
else
pUser.SysMessage( "That must be in your pack for you to use it." );
return false;
}
function displaygump(socket, pUser)
{
var myGump = new Gump;
myGump.AddPage(0);
myGump.AddBackground( 0, 0, 200, 200, 2600 );
myGump.AddButton( 50, 45, 0x868, 1, 0, 1 );
myGump.AddXMFHTMLGump( 90, 50, 70, 40, 1018323, false, false );//turn
myGump.AddButton( 50, 95, 0x868, 1, 0, 2 );
myGump.AddXMFHTMLGump( 90, 100, 70, 40, 1018324, false, false );//up
myGump.AddButton( 50, 145, 0x868, 1, 0, 3 );
myGump.AddXMFHTMLGump( 90, 150, 70, 40, 1018325, false, false );//down
myGump.Send( pUser );
myGump.Free();
return false;
}
function onGumpPress( pSock, pButton, gumpData )
{
var pUser = pSock.currentChar;
switch(pButton)
{
case 0:
break;//close
case 1:
pSock.CustomTarget( 3);
var ret=displaygump( pSock, pUser );
break;//turn
case 2:
pSock.CustomTarget( 2);
var ret=displaygump( pSock, pUser );
break;//Up
case 3:
pSock.CustomTarget(1);
var ret=displaygump( pSock, pUser );
break;//down
}
}
function onCallback1( socket, ourObj )
{
var tChar = socket.currentChar;
if( !ValidateObject( ourObj ) || ourObj.movable == 2 )
{
socket.SysMessage( "You cannot use the house decorator on that object." );
return;
}
if( !ourObj.isItem )
return;
if( ourObj.z == 7 || ourObj.z == 27 )
{
socket.SysMessage( "You cannot lower it down any further." );
return false;
}
if( ourObj.weight ==10000 )
{
socket.SysMessage( "That is too heavy." );
return false;
}
if( ourObj.movable !== 3 )
{
socket.SysMessage( "That is not locked down." );
return false;
}
socket.CustomTarget(1);
if( !socket.GetWord( 1 ) )
ourObj.z -= 1;
}
function onCallback2( socket, ourObj )
{
var tChar = socket.currentChar;
if( !ValidateObject( ourObj ) || ourObj.movable == 2 )
{
socket.SysMessage( "You cannot use the house decorator on that object." );
return;
}
if( !ourObj.isItem )
return;
if( ourObj.z == 22 || ourObj.z == 42)
{
socket.SysMessage( "You cannot raise it up any higher." );
return false;
}
if( ourObj.weight ==10000 )
{
socket.SysMessage( "That is too heavy." );
return false;
}
if( ourObj.movable !== 3 )
{
socket.SysMessage( "That is not locked down." );
return false;
}
socket.CustomTarget(2);
if( !socket.GetWord( 1 ) )
ourObj.z += 1;
}
function onCallback3( socket, ourObj )
{
var tChar = socket.currentChar;
if( !ValidateObject( ourObj ) || ourObj.movable == 2 )
{
socket.SysMessage( "You cannot use the house decorator on that object." );
return;
}
if( !ourObj.isItem )
return;
if( ourObj.weight ==10000 )
{
socket.SysMessage( "That is too heavy." );
return false;
}
if( ourObj.movable !== 3 )
{
socket.SysMessage( "That is not locked down." );
return false;
}
socket.CustomTarget(3);
TriggerEvent( 5089, "onDrop", ourObj, tChar);
}
{
if( iUsed.container != null )
{
var persMulti = FindMulti( pUser.x, pUser.y, pUser.z, pUser.worldnumber );
var itemMulti = FindMulti( iUsed.x, iUsed.y, iUsed.z, iUsed.worldnumber );
if( persMulti != itemMulti )
{
var ret=displaygump( iUsed, pUser );
}
else
pUser.SysMessage( "You must be in your house to do this." );
return false;
}
else
pUser.SysMessage( "That must be in your pack for you to use it." );
return false;
}
function displaygump(socket, pUser)
{
var myGump = new Gump;
myGump.AddPage(0);
myGump.AddBackground( 0, 0, 200, 200, 2600 );
myGump.AddButton( 50, 45, 0x868, 1, 0, 1 );
myGump.AddXMFHTMLGump( 90, 50, 70, 40, 1018323, false, false );//turn
myGump.AddButton( 50, 95, 0x868, 1, 0, 2 );
myGump.AddXMFHTMLGump( 90, 100, 70, 40, 1018324, false, false );//up
myGump.AddButton( 50, 145, 0x868, 1, 0, 3 );
myGump.AddXMFHTMLGump( 90, 150, 70, 40, 1018325, false, false );//down
myGump.Send( pUser );
myGump.Free();
return false;
}
function onGumpPress( pSock, pButton, gumpData )
{
var pUser = pSock.currentChar;
switch(pButton)
{
case 0:
break;//close
case 1:
pSock.CustomTarget( 3);
var ret=displaygump( pSock, pUser );
break;//turn
case 2:
pSock.CustomTarget( 2);
var ret=displaygump( pSock, pUser );
break;//Up
case 3:
pSock.CustomTarget(1);
var ret=displaygump( pSock, pUser );
break;//down
}
}
function onCallback1( socket, ourObj )
{
var tChar = socket.currentChar;
if( !ValidateObject( ourObj ) || ourObj.movable == 2 )
{
socket.SysMessage( "You cannot use the house decorator on that object." );
return;
}
if( !ourObj.isItem )
return;
if( ourObj.z == 7 || ourObj.z == 27 )
{
socket.SysMessage( "You cannot lower it down any further." );
return false;
}
if( ourObj.weight ==10000 )
{
socket.SysMessage( "That is too heavy." );
return false;
}
if( ourObj.movable !== 3 )
{
socket.SysMessage( "That is not locked down." );
return false;
}
socket.CustomTarget(1);
if( !socket.GetWord( 1 ) )
ourObj.z -= 1;
}
function onCallback2( socket, ourObj )
{
var tChar = socket.currentChar;
if( !ValidateObject( ourObj ) || ourObj.movable == 2 )
{
socket.SysMessage( "You cannot use the house decorator on that object." );
return;
}
if( !ourObj.isItem )
return;
if( ourObj.z == 22 || ourObj.z == 42)
{
socket.SysMessage( "You cannot raise it up any higher." );
return false;
}
if( ourObj.weight ==10000 )
{
socket.SysMessage( "That is too heavy." );
return false;
}
if( ourObj.movable !== 3 )
{
socket.SysMessage( "That is not locked down." );
return false;
}
socket.CustomTarget(2);
if( !socket.GetWord( 1 ) )
ourObj.z += 1;
}
function onCallback3( socket, ourObj )
{
var tChar = socket.currentChar;
if( !ValidateObject( ourObj ) || ourObj.movable == 2 )
{
socket.SysMessage( "You cannot use the house decorator on that object." );
return;
}
if( !ourObj.isItem )
return;
if( ourObj.weight ==10000 )
{
socket.SysMessage( "That is too heavy." );
return false;
}
if( ourObj.movable !== 3 )
{
socket.SysMessage( "That is not locked down." );
return false;
}
socket.CustomTarget(3);
TriggerEvent( 5089, "onDrop", ourObj, tChar);
}
function onDrop( iDropped, pDropper )
{
switch( iDropped.id )
{
case 0x0B5A: iDropped.id++; break;
case 0x0B5B: iDropped.id++; break;
case 0x0B5C: iDropped.id++; break;
case 0x0B5D: iDropped.id = 0x0B5A; break;
case 0x0b56: iDropped.id++; break;
case 0x0b57: iDropped.id++; break;
case 0x0b58: iDropped.id++; break;
case 0x0b59: iDropped.id = 0x0b56; break;
case 0x0b56: iDropped.id++; break;
case 0x0b57: iDropped.id++; break;
case 0x0b58: iDropped.id++; break;
case 0x0b59: iDropped.id = 0x0b56; break;
case 0x0b52: iDropped.id++; break;
case 0x0b53: iDropped.id++; break;
case 0x0b54: iDropped.id++; break;
case 0x0b55: iDropped.id = 0x0b52; break;
case 0x0b4e: iDropped.id++; break;
case 0x0b4f: iDropped.id++; break;
case 0x0b50: iDropped.id++; break;
case 0x0b51: iDropped.id = 0x0b4e; break;
case 0x0b32: iDropped.id++; break;
case 0x0b33: iDropped.id = 0x0b32; break;
case 0x0b2e: iDropped.id++; break;
case 0x0b2f: iDropped.id++; break;
case 0x0b30: iDropped.id++; break;
case 0x0b31: iDropped.id = 0x0b2e; break;
case 0x0b2c: iDropped.id++; break;
case 0x0b2d: iDropped.id = 0x0b2c; break;
case 0x1218: iDropped.id++; break;
case 0x1219: iDropped.id++; break;
case 0x121a: iDropped.id++; break;
case 0x121b: iDropped.id = 0x1218; break;
case 0x3dff: iDropped.id++; break;
case 0x3e00: iDropped.id = 0x3dff; break;
case 0x0e40: iDropped.id++; break;
case 0x0e41: iDropped.id = 0x0e40; break;
case 0x09ab: iDropped.id = 0x0e7c; break;
case 0x0e7c: iDropped.id = 0x09ab; break;
case 0x09a8: iDropped.id = 0x0e80; break;
case 0x0e80: iDropped.id = 0x09a8; break;
case 0x09a9: iDropped.id = 0x0e7e; break;
case 0x0e7e: iDropped.id = 0x09a9; break;
case 0x09aa: iDropped.id = 0x0e7d; break;
case 0x0e7d: iDropped.id = 0x09aa; break;
case 0x0a2c: iDropped.id = 0x0a34; break;
case 0x0a34: iDropped.id = 0x0a2c; break;
case 0x0a30: iDropped.id = 0x0a38; break;
case 0x0a38: iDropped.id = 0x0a30; break;
case 0x0a4f: iDropped.id = 0x0a53; break;
case 0x0a53: iDropped.id = 0x0a4f; break;
case 0x0a4d: iDropped.id = 0x0a51; break;
case 0x0a51: iDropped.id = 0x0a4d; break;
case 0x0a9d: iDropped.id = 0x0a9e; break;
case 0x0a9e: iDropped.id = 0x0a9d; break;
case 0x0e3c: iDropped.id = 0x0e3d; break;
case 0x0e3d: iDropped.id = 0x0e3c; break;
case 0x0e3e: iDropped.id = 0x0e3f; break;
case 0x0e3f: iDropped.id = 0x0e3e; break;
case 0x0e42: iDropped.id = 0x0e43; break;
case 0x0e43: iDropped.id = 0x0e42; break;
case 0x0b90: iDropped.id = 0x0b7d; break;
case 0x0b7d: iDropped.id = 0x0b90; break;
case 0x0b8f: iDropped.id = 0x0b7c; break;
case 0x0b7c: iDropped.id = 0x0b8f; break;
case 0x0b49: iDropped.id++; break;
case 0x0b4a: iDropped.id++; break;
case 0x0b4b: iDropped.id++; break;
case 0x0b4c: iDropped.id = 0x0b49; break;
}
}
{
switch( iDropped.id )
{
case 0x0B5A: iDropped.id++; break;
case 0x0B5B: iDropped.id++; break;
case 0x0B5C: iDropped.id++; break;
case 0x0B5D: iDropped.id = 0x0B5A; break;
case 0x0b56: iDropped.id++; break;
case 0x0b57: iDropped.id++; break;
case 0x0b58: iDropped.id++; break;
case 0x0b59: iDropped.id = 0x0b56; break;
case 0x0b56: iDropped.id++; break;
case 0x0b57: iDropped.id++; break;
case 0x0b58: iDropped.id++; break;
case 0x0b59: iDropped.id = 0x0b56; break;
case 0x0b52: iDropped.id++; break;
case 0x0b53: iDropped.id++; break;
case 0x0b54: iDropped.id++; break;
case 0x0b55: iDropped.id = 0x0b52; break;
case 0x0b4e: iDropped.id++; break;
case 0x0b4f: iDropped.id++; break;
case 0x0b50: iDropped.id++; break;
case 0x0b51: iDropped.id = 0x0b4e; break;
case 0x0b32: iDropped.id++; break;
case 0x0b33: iDropped.id = 0x0b32; break;
case 0x0b2e: iDropped.id++; break;
case 0x0b2f: iDropped.id++; break;
case 0x0b30: iDropped.id++; break;
case 0x0b31: iDropped.id = 0x0b2e; break;
case 0x0b2c: iDropped.id++; break;
case 0x0b2d: iDropped.id = 0x0b2c; break;
case 0x1218: iDropped.id++; break;
case 0x1219: iDropped.id++; break;
case 0x121a: iDropped.id++; break;
case 0x121b: iDropped.id = 0x1218; break;
case 0x3dff: iDropped.id++; break;
case 0x3e00: iDropped.id = 0x3dff; break;
case 0x0e40: iDropped.id++; break;
case 0x0e41: iDropped.id = 0x0e40; break;
case 0x09ab: iDropped.id = 0x0e7c; break;
case 0x0e7c: iDropped.id = 0x09ab; break;
case 0x09a8: iDropped.id = 0x0e80; break;
case 0x0e80: iDropped.id = 0x09a8; break;
case 0x09a9: iDropped.id = 0x0e7e; break;
case 0x0e7e: iDropped.id = 0x09a9; break;
case 0x09aa: iDropped.id = 0x0e7d; break;
case 0x0e7d: iDropped.id = 0x09aa; break;
case 0x0a2c: iDropped.id = 0x0a34; break;
case 0x0a34: iDropped.id = 0x0a2c; break;
case 0x0a30: iDropped.id = 0x0a38; break;
case 0x0a38: iDropped.id = 0x0a30; break;
case 0x0a4f: iDropped.id = 0x0a53; break;
case 0x0a53: iDropped.id = 0x0a4f; break;
case 0x0a4d: iDropped.id = 0x0a51; break;
case 0x0a51: iDropped.id = 0x0a4d; break;
case 0x0a9d: iDropped.id = 0x0a9e; break;
case 0x0a9e: iDropped.id = 0x0a9d; break;
case 0x0e3c: iDropped.id = 0x0e3d; break;
case 0x0e3d: iDropped.id = 0x0e3c; break;
case 0x0e3e: iDropped.id = 0x0e3f; break;
case 0x0e3f: iDropped.id = 0x0e3e; break;
case 0x0e42: iDropped.id = 0x0e43; break;
case 0x0e43: iDropped.id = 0x0e42; break;
case 0x0b90: iDropped.id = 0x0b7d; break;
case 0x0b7d: iDropped.id = 0x0b90; break;
case 0x0b8f: iDropped.id = 0x0b7c; break;
case 0x0b7c: iDropped.id = 0x0b8f; break;
case 0x0b49: iDropped.id++; break;
case 0x0b4a: iDropped.id++; break;
case 0x0b4b: iDropped.id++; break;
case 0x0b4c: iDropped.id = 0x0b49; break;
}
}