Some mounts are invisible when I am mounted.

Get Help on scripting in POL with configurations, config setups, script trouble shooting, etc.
Post Reply
Yukiko
Distro Developer
Posts: 2826
Joined: Thu Feb 02, 2006 1:41 pm

Some mounts are invisible when I am mounted.

Post by Yukiko »

First, I am using a converted POL 0.95 Distro to POL 0.97 scriptset. I am running with the latest 0.97 core and have run UO convert (using tha "starthere" batch file) to generate all my realms, cfg files yada yada yada.

When I mount the first three horses they become invisible and it looks like I am riding air. However horse4 seems to work just fine as do llamas and a few other creatures such as the etherial swamp dragon. Now with one such steed I found that when I mounted it I was riding air and also had the graphic of a staff in my hand in the animation but I was not holding one on my paperdoll. Below I have posted the section of my tamed script that deals with mounting a character on a rideable. If anyone can shed some light on this I would appreciate it.

Code: Select all

    var alreadymounted := GetEquipmentByLayer(master, 25);
    if(alreadymounted)
      return;
    endif
    var mounttype := 0;
    case(me.graphic)
      0xcc: mounttype := 0x3ea2;  // Horse1
      0xc8: mounttype := 0x3e9f;  // Horse2
      0xe2: mounttype := 0x3ea0;  // Horse3
      0xe4: mounttype := 0x3ea1;  // Horse4
      0xdc: mounttype := 0x3ea6;  // Llama
      0xd2: mounttype := 0x3ea3;  // Desert Ostard
      0xda: mounttype := 0x3ea4;  // Frenzied Ostard
      0xdb: mounttype := 0x3ea5;  // Forest Ostard
      177:  mounttype := 0x3ea7;  // Nightmare
      0x75:  mounttype := 0x3ea8;  // Silver Steed
      114:  mounttype := 0x3ea9;  // Nightmare
      115:  mounttype := 0x3eaa;  // Ethereal Horse
      170:  mounttype := 0x3eab;  // Ethereal Llama
     0xd2:  mounttype := 0x3eac;  // Ethereal Ostard
     0xC3:  mounttype := 0x3e97;  // Ethereal Giant Beetle
     0xC2:  mounttype := 0x3e98;  // Ethereal Swamp Dragon
     0xC1:  mounttype := 0x3e9a;  // Ethereal Ridgeback
     0xBF:  mounttype := 0x3e9c;  // Ethereal Kirin
     0xC0:  mounttype := 0x3e9d;  // Ethereal Unicorn
      120:  mounttype := 0x3eaf;  // War Horse (Blood Red) 		warhorse5
      121:  mounttype := 0x3eb0;  // War Horse (Light Green)
      119:  mounttype := 0x3eb1;  // War Horse (Light Blue)
      144:  mounttype := 0x3eb3;  // Sea Horse (Medium Blue)
      116:  mounttype := 0x3eb5;  // Nightmare
      178:  mounttype := 0x3eb6;  // Nightmare 4
      132:  mounttype := 0x3ead;  // Kirin
      118:  mounttype := 0x3eb2;  // War Horse (Purple)
      122:  mounttype := 0x3eb4;  // Unicorn
      179:  mounttype := 0x3eb7;  // Dark Steed
      187:  mounttype := 0x3eb8;  // Ridgeback
      188:  mounttype := 0x3eba;  // Ridgeback, Savage
      793:  mounttype := 0x3ebb;  // Skeletal Mount
      791:  mounttype := 0x3ebc;  // Beetle
      794:  mounttype := 0x3ebd;  // SwampDragon
      799:  mounttype := 0x3ebe;  // Armored Swamp Dragon
    endcase
    if (mounttype == 0x3eb4 and master.graphic == 0x190) // male attempting to ride a unicorn
        SendSysMessage (master, "The unicorn only allows females to mount it.", color := 88);
        return;
    endif
    
    if (mounttype == 0x3ead and master.graphic == 0x191) // female attempting to ride a ki-rin
        SendSysMessage (master, "The ki-rin only allows males to mount it.", color := 88);
        return;
    endif
    
    if (mounttype == 0x3e9d and master.graphic == 0x190) // male attempting to ride a unicorn
        SendSysMessage (master, "The unicorn only allows females to mount it.", color := 88);
        return;
    endif
    
    if (mounttype == 0x3e9c and master.graphic == 0x191) // female attempting to ride a ki-rin
        SendSysMessage (master, "The ki-rin only allows males to mount it.", color := 88);
        return;
    endif
    
    if(mounttype)
      if(MoveObjectToLocation(master,me.x,me.y,me.z,master.realm,0))
        master.facing := me.facing;
        var mount := CreateItemAtLocation(5228, 1182, 0, 0xf021,1, "britannia"); // newmap problem
        if(Cint(GetObjProperty(me, "summoned")) == 1)
          SetObjProperty(mount, "summoned", 1);
        endif
        mount.color := me.color;
        MoveObjectToLocation(me, 5228, 1182, 0, "britannia", MOVEOBJECT_FORCELOCATION); // newmap problem
        mount.graphic := mounttype;
        EquipItem(master,mount);
        SetObjProperty(mount,"serial", me.serial);
        SetObjProperty(me,"mounted", 1);
        SetObjProperty(me,"mounted_on", master.serial);
	if (GetObjProperty(me, "totem"))
		SetObjProperty(mount, "totem", GetObjProperty(me, "totem"));
	endif
	if (GetObjProperty(me, "totemcolor"))
		SetObjProperty(mount, "totemcolor", GetObjProperty(me, "totemcolor"));
	endif

        guarding := 0;
        following := 0;
      endif
    endif
  endif
Yukiko
Distro Developer
Posts: 2826
Joined: Thu Feb 02, 2006 1:41 pm

Post by Yukiko »

Did some testing and found this is linked to my custom graphics/clothes I added. Is there some way to know when adding a custom paperdoll graphic will interfere with things like this or other game related issues?
Post Reply