Announcement

Collapse
No announcement yet.

MAKI Cheats

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Here's the complete script; this compiles with no trouble. You'll want to tweak the "std.mi" line to reference where you actually have the std.mi file.

    From here, you would need objects in your XML named "cdanimstop" and "cdanimplay" (or whatever you want to call them; mine is a spinning CD). The second one would be a multiple-element file with frames, essentially. Winamp will "scroll" through the frames to display the animation. Let's say your non-animated file was 50 pixels by 100 pixels, and you wanted four different animation frames. You'd have a second file 50 pixels by 400 pixels, each 100 pixels vertically being a new frame of the animation.

    If you design and define the graphical elements that way, and use the script below, you'll get what you're after.

    Script:
    code:

    #include "..\..\..\lib\std.mi"

    Global container main;
    Global layer cdanimstop;
    Global animatedlayer cdanimplay;

    system.onScriptLoaded()
    {
    Group tickergroup = getcontainer("main").getLayout("normal");
    cdanimstop = tickergroup.findobject("cdanimstop");
    cdanimplay = tickergroup.findobject("cdanimplay");

    if (getstatus())
    {
    cdanimplay.show();
    cdanimstop.hide();
    }
    else
    {
    cdanimplay.hide();
    cdanimstop.show();
    }
    }

    system.onTitleChange(String s)
    {
    if (getstatus())
    {
    cdanimplay.show();
    cdanimstop.hide();
    }
    else
    {
    cdanimplay.hide();
    cdanimstop.show();
    }
    }

    System.onPlay()
    {
    cdanimplay.show();
    cdanimstop.hide();
    }

    System.onStop()
    {
    cdanimplay.hide();
    cdanimstop.show();
    }

    XML - put this in whatever group/container you want the animation to live in
    code:

    <layer id="cdanimstop" x="625" y="53" w="85" h="57"
    image="cdanimstop" />
    <animatedlayer id="cdanimplay" x="625" y="53" w="85" h="57"
    image="cdanimplay" autoplay="1" move="0"
    autoreplay="1" rectrgn="0" />

    Comment


    • Great! I knew about "animatedlayer" and how it works but I´m totally lost with wasabi if you don´t show me from #include "..\..\..\lib\std.mi".. >)

      I´ll try this right now, thanks in advance!!
      · · Big Bento Modern

      Comment


      • It works perfectly, I even change the first static layer for an animated one and it worked too.
        Do you have your other scripts shared somewhere?
        · · Big Bento Modern

        Comment


        • Anyone ever get the "list" object to work properly? I discovered that will give me the scrolling text window I'm after (if I set the list data in the XML directly), but getting it to work in MAKI has been difficult, and I can't find any examples of its use anywhere. Trying to use it as a text object requires a list to guiobject conversion (when declaring it as a list object), and explicitly declaring it as a guiobject in MAKI throws an error when using it with the "settext" function. If I can overcome these issues, I can use setXMLParam to feed the text in (or the "feed" option, which also doesn't seem to be documented).

          Comment


          • Originally Posted by JW View Post
            Anyone ever get the "list" object to work properly? I discovered that will give me the scrolling text window I'm after (if I set the list data in the XML directly), but getting it to work in MAKI has been difficult, and I can't find any examples of its use anywhere. Trying to use it as a text object requires a list to guiobject conversion (when declaring it as a list object), and explicitly declaring it as a guiobject in MAKI throws an error when using it with the "settext" function. If I can overcome these issues, I can use setXMLParam to feed the text in (or the "feed" option, which also doesn't seem to be documented).
            See attached .m file for an example. The part your interested in, you'll find in the custom function called addProvider()... I think

            Remember a List in maki isn't a <List/> in xml.
            A List in maki is just an array of values. If you want to work with the XML list in maki, it's called a GuiList object. The list in this example have an image label too.

            The attachment comes from:
            C:\Program Files (x86)\Winamp\Plugins\ClassicPro\engine\xui\CentroSUI\_v2\Reader\main.m
            Attached Files
            ClassicPro© v2.01 : This plugin allows you to use cPro skins in Winamp. ClassicPro skins are all SUI skins and loads very quickly. ClassicPro skins is even easier to skin than Winamp Classic skins. A new layout have been added since version 2.
            Download ClassicPro© ==== cPro Skins ==== ClassicPro© Homepage ==== SC Forums

            Comment


            • Thanks! The removeItem and removeAll options throw an error during compile ("not a member function nor an event of class 'GuiList'"). Any ideas on either of those? The addItem option seems to work fine (no compile errors, anyway).

              Disregard; using setXMLParam to tweak the "items" parameter, instead of addItem, works great. I just have to separate the lines in the ID3 comment field with semicolons, and I jsut discovered that commas in the comments wipe out the remaining text on the lines that have them. Odd...

              Thanks for your help!

              Comment


              • And now I know why - was mixing up "list" and "guilist" in std.mi (which you warned me about )...

                Comment


                • New issue - trying to use the XML list for something else. I need to get the text string for an item in the list (by clicking, double-clicking, whatever) and use that text string elsewhere. I can't find a suitable function or parameter for that. I tried getItemLabel, but it wants parameters included. I tried using the position integer for the double-click action and the compiler told me the function doesn't need any parameters. So I took it out and the compiler then told me I need two parameters (which matches std.mi).

                  code:

                  list.onDoubleClick(int itemnum)
                  {
                  string filename = ((albumlist.getItemLabel() + (".m3u")));
                  system.playfile(filename);
                  setText(filename); //Just for test purposes to see
                  if the double-click action works; it does
                  }

                  Comment


                  • Got this working. getItemLabel is the correct function, with itemnum from the doubleclick action as the first parameter, and 0 as the second.

                    Now to figure out that pesky "feed" option in the XML, so I don't have to hard-code the list items...

                    Comment


                    • The XML functions is really easier to use than they look.

                      That previous script also had some xml reading in it. If you want a "cleaner" example see attachment.

                      From here:
                      C:\Program Files (x86)\Winamp\Plugins\ClassicPro\engine\two\scripts\read-classicpro.m

                      If you want to read the xml file from your skin directory you must include the script with a param like this:
                      PHP Code:
                      <script file="xxx\xxx.maki" param="@SKINPATH@"/> 
                      Just one tip... Might save you a few hours (in my case :P). Don't include a "&" somewhere in the xml file ( I was adding url's and they had a few of them )

                      EDIT:
                      Woo 1000 posts!
                      Attached Files
                      ClassicPro© v2.01 : This plugin allows you to use cPro skins in Winamp. ClassicPro skins are all SUI skins and loads very quickly. ClassicPro skins is even easier to skin than Winamp Classic skins. A new layout have been added since version 2.
                      Download ClassicPro© ==== cPro Skins ==== ClassicPro© Homepage ==== SC Forums

                      Comment


                      • rotation layer

                        Hi peeps
                        I know you guys are always busy with us noobs, but if we don't ask we don't learn
                        I have coded all this tape deck to work as it should but I am struggling to get a script to rotate the cassette tape reels x4 at different speeds on play and stop on stop&pause.

                        Any help will be greatly appreciated
                        Steven
                        Attached Files

                        Comment


                        • The easiest approach for me would be to have multiple images one each state

                          1. Stopped
                          2. Playing (this would be an animated layer in xml)
                          3. FWD (same as above but, with faster transitions)
                          4. RWD (same as above but, reversed)
                          5. Pause (Perhaps, one frame and tick back and forth)
                          1001skins.net |
                          That's not a skin, it's some god awful piece of skinner gunk.

                          Comment


                          • Originally Posted by garetjax View Post
                            The easiest approach for me would be to have multiple images one each state

                            1. Stopped
                            2. Playing (this would be an animated layer in xml)
                            3. FWD (same as above but, with faster transitions)
                            4. RWD (same as above but, reversed)
                            5. Pause (Perhaps, one frame and tick back and forth)
                            And with a script you trigger each animation depending on what buttons is pressed. May be very complex if you want to use the current frame as the starting point of the next animation (so it doesn't start from 0 when it's paused and you hit FWD). But that may be optional and not really worth the trouble, the thing is I don't think I've ever seen such a script, can you do it? / point out where to?
                            · · Big Bento Modern

                            Comment


                            • Originally Posted by Victhor View Post
                              And with a script you trigger each animation depending on what buttons is pressed. May be very complex if you want to use the current frame as the starting point of the next animation (so it doesn't start from 0 when it's paused and you hit FWD). But that may be optional and not really worth the trouble, the thing is I don't think I've ever seen such a script, can you do it? / point out where to?
                              [auto-response day] the attached script here -yeah, my own post- has a simple mechanism like:

                              code:
                              System.onPlay() {
                              voltAnimation.show(); // Shows the animation on first play;
                              voltAnimation.play(); // Plays the animation the first time a song plays;
                              }

                              System.onTitleChange(string newtitle) {
                              voltAnimation.show();
                              voltAnimation.play(); // Shows and plays the animation after the playlist changes the first time;
                              }

                              So I guess it wouldn't be hard to use something like
                              code:
                              System.onNEXT() { bla bla bla..
                              and
                              System.onPREV() { bla bla bla..

                              and show/hide the other animations accordingly. In my experience this is easier to say than to do, so it can take (me) weeks before doing it right...
                              · · Big Bento Modern

                              Comment


                              • sorry I didn't make it clear but all 4 reels are 4 individual layers or pngs just stuck them in one png to show you them .

                                hope someone can do it as I just got to learn about xml. lol but learn fast as I got a good teacher

                                Comment

                                Working...
                                X
                                😀
                                🥰
                                🤢
                                😎
                                😡
                                👍
                                👎