Page 1 of 1

Painting

Posted: Thu Dec 01, 2011 1:18 am
by dragon slayer
yes i have created this awesome painting skill. uses Inscribe Skill

first make a new .js file called painting.js then add this code in
function onUseChecked( pUser, iUsed )
{
    var socket = pUser.socket;
    if( socket && iUsed && iUsed.isItem )
    {
        socket.tempObj = iUsed;
        var targMsg = GetDictionaryEntry( 459, socket.Language );
        socket.CustomTarget( 1, targMsg );
    }
    return false;
}

function onCallback1( socket, ourObj )
{
    var bItem = socket.tempObj;
    var mChar = socket.currentChar;

    socket.tempObj = null;

    if( mChar && mChar.isChar && bItem && bItem.isItem )
    {
        if( !ourObj || !ourObj.isItem )
        {
            socket.SysMessage( " You can't use this on that." );
            return;
        }

        var resID = ourObj.id;
        if ( resID == 0x0F66 )  // A valid tailoring resource
        {
            var ownerObj = GetPackOwner( ourObj, 0 );
            if( ownerObj && mChar.serial == ownerObj.serial )
                socket.MakeMenu( 4000, 34 );
            else
                socket.SysMessage( GetDictionaryEntry( 775, socket.Language ) );
        }
        else
            socket.SysMessage( "You can't make anything from that material." );
    }
}
Then go make a new file called painting.dfn in your items folder and add this in there
[paintsandbrush]
{
get=base_item
name=paints and brush
id=0x0fc1
value=8 4
weight=100
}

[portrait1]
{
get=base_item
NAME=a portrait
ID=0x0E9F
DECAY=0
}

[largeportrait]
{
get=base_item
NAME=a large painting
ID=0x0EA0
DECAY=0
}

[painting1]
{
get=base_item
NAME=a painting
ID=0x0EA1
DECAY=0
}

[painting2]
{
get=base_item
NAME=a painting
ID=0x0EA2
DECAY=0
}

[painting3]
{
get=base_item
NAME=a painting
ID=0x0EA3
DECAY=0
}

[painting4]
{
get=base_item
NAME=a painting
ID=0x0EA4
DECAY=0
}

[portrait2]
{
get=base_item
NAME=a portrait
ID=0x0EA5
DECAY=0
}

[portrait3]
{
get=base_item
NAME=a portrait
ID=0x0EA6
DECAY=0
}

[portrait4]
{
get=base_item
NAME=a portrait
ID=0x0EA7
DECAY=0
}

[portrait5]
{
get=base_item
NAME=a portrait
ID=0x0EA8
DECAY=0
}

[portrait6]
{
get=base_item
NAME=a painting
ID=0x0EC8
DECAY=0
}

[portrait7]
{
get=base_item
NAME=a painting
ID=0x0EC9
DECAY=0
}

[portrait8]
{
get=base_item
NAME=a portrait
ID=0x0EE7
DECAY=0
}

[easelandcanvas]
{
get=base_item
NAME=easel and canvas
ID=0x0f66
DECAY=0
}
now go into create folder and make a new dfn script called painting
and add this in it
// start of painting section

[SUBMENU 4000]
{ tailoring
MENU=4001   // portraits
}
[MENUENTRY 4000]
{
NAME=Previous Menu
SUBMENU=4000
}
[MENUENTRY 4001]
{
NAME=portraits
ID=0x0E9F
SUBMENU=4001
}

[SUBMENU 4001]
{ portraits
ITEM=130
ITEM=131
ITEM=132
ITEM=133
ITEM=134
ITEM=135
ITEM=136
ITEM=137
ITEM=138
ITEM=139
ITEM=140
ITEM=141
MENU=4000
}

[ITEM 130]
{
NAME=a portrait
ID=0x0e9f
RESOURCE=PAINTING 1
SKILL=34 0 520
ADDITEM=portrait1
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 131]
{
NAME=a large painting
ID=0x0EA0
RESOURCE=PAINTING 1
SKILL=34 2 520
ADDITEM=largeportrait
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 132]
{
NAME=a painting
ID=0x0EA1
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=painting1
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 133]
{
NAME=a painting
ID=0x0EA2
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=painting2
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 134]
{
NAME=a painting
ID=0x0EA3
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=painting3
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 135]
{
NAME=a painting
ID=0x0EA4
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=painting4
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 136]
{
NAME=a portrait
ID=0x0EA5
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=portrait2
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 137]
{
NAME=a portrait
ID=0x0EA6
RESOURCE=PAINTING 1
SKILL=34 72 570
ADDITEM=portrait3
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 138]
{
NAME=a portrait
ID=0x0EA7
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=portrait4
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 139]
{
NAME=a portrait
ID=0x0EA8
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=portrait5
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 140]
{
NAME=a portrait
ID=0x0EC8
RESOURCE=PAINTING 1
SKILL=34 62 560
ADDITEM=portrait6
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
[ITEM 141]
{
NAME=a portrait
ID=0x0EC9
RESOURCE=PAINTING 1
SKILL=34 72 570
ADDITEM=portrait7
MINRANK=1
MAXRANK=10
SOUND=0x0249
}

[ITEM 141]
{
NAME=a portrait
ID=0x0EE7
RESOURCE=PAINTING 1
SKILL=34 72 570
ADDITEM=portrait8
MINRANK=1
MAXRANK=10
SOUND=0x0249
}
Almost forgot go back to your js folder and open this file jse_objectassociations add this line in there

Code: Select all

// paintsandbrush
0x0FC1=5024
there you go you can now paint.

the create menu is kinda stuffy I'm not sure how to fix that part yet