Linden text version 2
{
LLEmbeddedItems version 1
{
count 0
}
Text length 9709

MLP - MULTI-LOVE-POSE V1.2 - Copyright (c) 2006, by Miffy Fluffy (BSD License)

The BSD Licence allows anybody to use the source code, in any manner they wish, providing that they provide the copyright notice above on further distributions.
So it's totally free, however if you like it, I would be very happy if you donate any L$. If you're using significant parts of this code in commercial products, I would appreciate if you donate me at least L$1 for each sold product (preferably more :). And it's nice if you could send me a copy of each commercial product, incl. updates (as I do get a lot of questions from buyers of commercial products made with the MLP, also please indicate who to contact, not me :)
I won't give support, however I'll make an exception for end-users that donated L$1000 or more (for commercial support, custom versions, contact me, however my time is limited).
To donate, go to my profile (Search - People - Miffy Fluffy) and use the "Pay..." button, thanks!
You can also find the link to the latest version here.

Note: users of previous versions need to change some things in the .MENUITEMS notecard, like the ShutDown button and menu (make sure they have different names now), the USERS options, and the STOP/STAND buttons (are now two different buttons with different functions). See this readme and the .MENUITEMS example.

FEATURES:
- Put all your poseball animations into one object (50 pairs or even more should be no problem).
- Create submenu's for each category of poses, for instance: "Lovers, Boy-Girl, Girl-Girl, Self, Solo, Dance"
- Shows 1 or 2 poseballs depending on the submenu you select
- Positions can be adjusted and saved into memory (backup is easy: select Memory Dump and copy-paste into notecard)
- Portable, can be worn and used everywhere
- Option to adjust height offset (Z) of all poses at once (for different persons/locations).

OPERATION:
- Click the MLP object to switch it on
- When everything has loaded click again for the menu
- Select a submenu containing poses, poseballs will appear automatically
- Sit on your poseball (Right-click - LOVE)
- Select a pose, the animations will start
- To return to the default stand pose, select 'STAND'
- To remove the balls, select 'STOP'
- To switch-off, select "ShutDown" twice (but you can leave it on after use).

TO ADD ANIMATIONS:
Copy all animations into the MLP object (if you want to use existing poseballs, open them to rip their animations). Note: you can use any object as MLP, just copy the MLP contents in the object of your choice.
Open the .MENUITEMS and add the animations:
POSE name | animation1 | animation2  (see examples in .MENUITEMS)
The changes will become active after MLP is (re)started.

TO ADJUST POSITIONS:
Select a submenu containing the pose you want to adjust, sit on the balls and select the pose you want to adjust.
Go back to the main menu, select "Options - Adjust Pos", this way the balls are changed into transparant beams. Right-click a beam, select Edit to adjust the position (hold Shift to select both beams). You can position the balls anywhere within 10m from the MLP object.
 "Save Pos" will store the position into memory.

TO MAKE A BACKUP:
The positions will still be kept in memory after shutdown/restart or when the MLP is put back in your inventory. The positions will be lost only when the memory script is reset (or when it crashes f.i. when it's too full: "Script run-time error / Stack-Heap Collision"). A backup can be made on the .POSITIONS notecard, when the memory is empty it will read the .POSITIONS notecard automatically.
To make a backup select "Mem Dump", copy the complete dump (from Chat-History) and paste it into the .POSITIONS notecard (just replace everything, you don't need to edit/format anything).

TO ADJUST HEIGHT OFFSET (Z):
Select "Height Adj" and click the "Z"-buttons, this will adjust the height for all poses. (Note: the offset height is stored in the Object Description, so any descriptions will be replaced).

ACCESS TO THE MAIN MENU:
The owner is the only one who can start/restart/shutdown, in all cases.
- if "Options - MenuUser" is set to OWNER: the owner is the only one who can access the menus
- if "Options - MenuUser" is set to ALL: anyone can access the MAIN MENU
- if "Options - MenuUser" is set to GROUP: members of the same Group as the MLP object can access the MAIN MENU (the MLP Group can set by right-clicking MLP and selecting Edit, More >> General tab - Group: Set)
Note: even if "MenuUser" is set to ALL or GROUP, individual SUBMENUS can still be blocked (you can define access for each submenu in .MENUITEMS, see examples in .MENUITEMS).

POSEBALL ACCESS:
- if "Options - BallUsers" is set to ALL: anyone can sit on the ball
- if "Options - BallUsers" is set to GROUP: only groupmembers can sit on a poseball. The balls will check if the person who tries to sit on the ball belongs to the same Group as the ~ball object (to set the Group of the ball, take a new copy of the MLP with your preferred Group set active on you. You could also take the ~ball out of the MLP, into the world, right-click, Edit, More >> General tab - Group: Set, thereafter take the edited ~ball into your Inventory (note: do this within a minute or so, because balls commit suicide after a while when taken into the world), delete the old ~ball in the MLP, and drag the new ~ball from your Inventory to the MLP).

PORTABLE USE:
Attach the object to the HUD, you can use it's default shape and color for clickable bar on one of the edges of your screen (to move HUD position: Right-click - Edit), you can edit color/transparancy/size/position.
Adjust the height offset (Z). Note: the balls will appear relative to the initial MLP position (to reset where the balls appear, press STOP to remove the balls. and reselect a submenu to rez them again).

FAQ:
- Will my animations be lost if I loose a poseball?
No. The animations are not placed the balls, they remain in the main MLP object. Don't worry about the poseballs, they are copies of the one in the MLP object. A balls will commit suicide if left behind somewhere (the MLP object needs to be within 20m).

- Sometimes notecards or scripts won't open for editing, why?
If the MLP contains many animations, access to it's contents can be slow, try again after a few seconds.

- "Script run-time error / Stack-Heap Collision"?
When it happens during loading: probably there are too many items in .MENUITEMS
When it happens during saving a position: the memory is full. If you do a reset (select: Tools - Reset Scripts in Selection), the backup on the .POSITIONS notecard will be loaded. (The Linden Scripting Language currently needs a lot of overhead memory during a 'save', which is the limiting factor for the number of poses that we can store, probably this will improve in the future. If you have saved a lot of positions (more than 50 or so), make a backup often (after saving a few positions), and do a reset after making the backup, this way the memory is optimized again and you can store more positions.)

CHANGES IN MLP V1.2:
- now checks if the balls are rezzed, it will rez new balls after a ball has disappeared unexpectedly for some reason (after a few minutes)
- ownership change is detected (thanks to Kokoro Fasching)
- added STAND button (now different from STOP button), to avoid confusion. STAND will always set the default stand pose. STOP will always remove the balls.
- added GROUP access option to MAIN MENU, in the Options menu - 'MenuUser' you can select between OWNER/GROUP/ALL (previous users need to adjust their .MENUITEMS notecard, USERS has become MENUUSERS with the new options).
- added GROUP access option for each individual SUBMENU, in .MENUITEMS you can define the access restriction for each submenu: OWNER/GROUP/ALL.
- added GROUP access option for the poseballs,  In the Options menu - 'BallUsers' you can select between GROUP/ALL. 
- If you select the menu while it has been used by someone else within the last minute, you're asked if you want to continue. (In previous versions the owner did get a chat message if any user operated the menu, this has been removed. To add this feature again: uncomment line #51 in ~menu.)
- note: menu's and poses can not have the same name anymore, users of previous versions should change the name of the 'Shut Down' button to something else  (f.i: ShutDown!) if they also have a menu with the same name.

CHANGES IN MLP V1.11:
- fixed a mistake I made which caused the balls to dissappear within 60 seconds.

CHANGES IN MLP V1.1:
- adjusted sit height on the balls, so the balls will remain visible with most objects
- altough not really necessary, I've added the possibility to SHOW/HIDE the balls via the menu (you can add a SHOW and/or HIDE button somewhere in the .MENUITEMS notecard)
- improved menuacces: selections from previous menudialogs will be disregarded (avoids problems with multiple users too)
- reduced load: no timers are running anymore when no balls are rezzed


Please report any bugs, or improvements in efficiency without loosing readability of the code (In many instances I've chosen readabilty over speed or size because I think it's reasonable to expect that the compiler will improve in the future). If you want to read the code start reading the comments in ~run for an overview. The source code used in ~menu is partly based on the Menu Engine by Zonax Delorean (BSD License), thanks. I included some free poses as examples, thanks to their makers. Thanks to Purrcat Miranda for testing with me :) Thanks to other creative people in SL too, and thanks for any donations. Have fun!

MLP - MULTI-LOVE-POSE V1.2 - Copyright (c) 2006, by Miffy Fluffy (BSD License)}
 