Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Jewel Match Framework

Discussion in 'Assets and Asset Store' started by kurayami88, Aug 30, 2013.

  1. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    it's highly possible to find oddities... i've known a buyer of JMFP that found a lot of oddities for me... if which with their help, pinpoint areas affecting it resulting in a more stable User Experience for all buyers. I know it's a hard thing finding oddities (as they are odd, and never occurs during normal play), and codes are never full prove... so if you found one, try and find the steps that leads to the bug... that will help me pin point it very easily. Thank you!
     
  2. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    ===============
    Changelog for v1.3.2
    ===============

    * Manual Update log from v1.3.1 to 1.3.2 made available for users whom has changed the default scripts

    * Fixed Gravity after effects bug whereby z-order does not retain after tweening.

    * More robust DestroyInTimeMarked() function.
    - previously will error when too many calls (crazy amount) are made in a very short period.

    * More robust SuggestPiece() function.
    - previously will error when too many calls of 'notifyBoardHasChanged()' are made in a very short period.

    * Fixed empty panel function reliance 'countBlockedUnfilled()'
    - was working.. but working via incorrect logic. Logic is now fixed.

    * Update Board script's DestroyBox() function
    - previously, non-destructible gamePiece will not allow panelHit() on the boardbox.
    Now, Panel will get hit regardless of whether the gamePiece is destructible or not.

    * Fixed mislabelled function 'isFillable()' for panelDefinition.
    - It actually determines whether the panel allows reset; nothing to do with gravity as suggested before.

    * Super upgraded the BoardLayout script! more features and neater design!
    - switched the pieces to display textures too!
    - has a new option to use the board chooser for pieces and panels
    - slightly modified GUI layout for visual appeal.

    * Transfered "justCreated" bool from Board class to GamePiece class to make it more stable.

    ===============

    ** attached below is the manual update script log i've made to help users update their scripts manually (if they need to) / or perhaps do not want to wait for official asset store release :p
    ** psstt... the sentence below is a link... not just a title...

    View attachment $JMFP Manual update Log 1.3.1 to 1.3.2.txt

    =======
    and these are for the new boardLayout... i believe it is safe to replace all scripts here ... and it's non-destructive and fully compatible with the old boardLayout.
    ** put this in scripts/area 51/game manager related
    View attachment $BoardLayout.cs

    ** put this in scripts/area 51/editor
    View attachment $BoardSetupChooserWindow.cs
    View attachment $BoardGUISetup.cs
     
    Last edited: Apr 12, 2014
  3. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    Sorry but there's a quick update... v1.3.2 was approved to the store sooner than expected... and with it included 1 version bug + 1 late-introduction feature.
    So, i'll be pushing v1.3.2r2 into the store.

    Below is the bugfix for 1.3.2 which is within the new DetectPossibleMoves() function *** I have already changed the manual update log above, but just to let you know where i made the mistake,...
    Code (csharp):
    1. void detectPossibleMoves() {
    2. ...
    3.                 StartCoroutine("suggestPiece"); // its a string coroutine so that we can use StopCoroutine!
    4.                 isCheckingPossibleMoves = false; // <-- mistake here...!!!
    5.             }
    6.         }
    7.     }
    8.  
    it was set to 'true' before this which is the wrong state... sorry !

    ----------
    the new feature is also already included in the 1.3.2 manual update before this (not knowing the first asset store push was already approved) so do not worry about that if you are manually updating.

    as for now if you do not want to manual update, please wait for the official 1.3.2r2 instead of the current 1.3.2 ... so sorry for the mix up!
     
  4. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    Is there a simple Getting Started Tutorial... I watched all the videos I could find but they all assumed I had been using the asset for ages, as opposed to reality, where I have never used the asset, and have no idea where to begin.
    Thanks
     
  5. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi dustinmckay,
    There really isn't much to get started with...in the very first video, i've mentioned that there is a tk2dCamera prefab located in the prefabs folder. You can easily create a new empty scene, and drop the prefab into the scene and you already got a game going.

    As for the rest, you can navigate to the GameManagerPanel ( via tk2dCamera -> middle anchor -> GameManagerPanel) and change any properties you like there.
    basic properties would include the board width/height ; the amount of active game piece ; the winning conditions.
    further customisation requires you to change the board layout via the "boardLayout" of which you can specify which types of board panels and pieces you would like to start with...

    the rest really is up to you and more than likely you will have to code it yourself to further customise GUI interactions and personal gameplay ideas.
    basically the very first video (though outdate) is already the quickstart guide =\
     
  6. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    Thanks, As I delve more into this, I am more and more impressed.
     
    Last edited: Apr 15, 2014
  7. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Hey! What would be the simplest way to destroy a piece just by clicking on?
    I know it must be possible but i have trouble finding the right functions to call. still a scripting noob here ;)

    I would like to introduce some special abilities where the player can remove a piece from the board, or remove a whole row, or a bunch of pieces...

    Thx for any hints :)

    edit: maybe i should mention that destroying is not so much the problem but to keep the gamemechanics intact while doing so is tricky for me...
     
    Last edited: Apr 16, 2014
  8. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    How do we change it so it checks if they have won, or lost. Currently even winning brings up the Gameover screen. Is there a way to check the condition and see if they completed the level before running out of time etc....
     
  9. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    in the winning conditions, in the game over routine you can have something like that:

    if (gm.score >= scoreToReach){isWin = true;}
    Thats the basic idea. The winning condition script is very basic, i had to change and add a lot to it to make it fit my needs, though whats already there is a perfect start. I basically learnt scripting(the few things i know) just by messing around with it.
     
  10. niflying

    niflying

    Joined:
    Jul 11, 2012
    Posts:
    108
    HI, Can we use rocks over shaded like this:

    $QQ图片20140403134836.jpg
     
    Last edited: Apr 17, 2014
  11. deiong

    deiong

    Joined:
    May 24, 2013
    Posts:
    79
    would love to see this as well :O thanks
     
  12. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    Does anyone know how to change the background image for different levels. It seems like you would just select the background image, in a different scene, but for some reason as soon as I hit play it reverts to the single background.
    Any Suggestions?/
     
  13. cg_destro

    cg_destro

    Joined:
    Aug 13, 2013
    Posts:
    142
    hey kurayami88 congratulation on finishing the game! :) I like boss fight, this is fucionality I was trying to do but finally I give up :) I'm to little experience to make it work :) If there is any chance that at some point you implemet that funcjonality?
    If yes could you add option to add gravity to it so if no pieces was bellow it fall down? this would be great for me :) another thing I'm not suer if with boss fight it damega boss when you destroy pieces diagonally to the bosspeice, would be great if there will be option to turn this on and off :)

    I love option to turn on and off window pop uo chooser :) maybe with holding ctrl window should popup even if default is turn off, so fast and easy you get what is best from both worlds :)

    I like how pieces skin doesnit have button underneeth just texture so you can desing how button will look if you want one :) would be great to make options to turn button on and off for both panels and pieces :)

    -when no skin texture you got name( like on empty panel) but would be great to fix size of button with name to be exacly the same as button with texture so everything look more oranised when you have couple names :)

    -pop out window - would be great if it pop out under the cursor, I think I may work that way but not in all scenerio, not in mine :) I have 2x 27' monitors and when i clicking on panel or piece it apper on first monitor not second, when i moved panel and/ or whole unity window to monitor 1 it still doesnt work, it jump up and down, left and right but not on the board layout window :/
    but I think that could work great with little tweaking :)

    - another suggestion, make checkbox in skin section to turn off skin for panels or pieces so only names apper even if there is texture

    - make option to seciffy in textbox how name of piece or panel will appear, default will get it from name of peice attached from piece manager so like it is now :) but when you specify something else it dispaly new name instead :) best example to shorten name of Special five to just five and have smaller button that can displan name no problem :)

    - another idea is to make color coding for piece button name other than normal, 90% + of a board will be normal pieces but if user change it to soemthing else should be easy to spot it in seconds :) some red or yellow on all pieces other than normal should do the job :)


    -make all buttons size more oranised so it will be easier to see whole board :)

    - and I agree with other would be great to make shade panel under rok so we need 2 levels of panels 1 under piece layer like shade andover like ice, rock lock etc,i even design something like that, it only use shade panel but I can't think out of id any other type would be needed, maybe naother tyle of shade with dufferent funcionality but for now soemthinkg like thisshould wokrk like a charm :)





    - another thing at beggining I tried modify boardlayout winodw myself and took me like 2 days figure out why somegui work ininspector and not in new window snd after I found reason for that I was to tired to finish my work and start doing soemthing else :p anyhow I modyfy apperence of panels textures that it scale up and down to some point so in bigger resolution it sill redable as well as on small screens ( Ihave 27' 2500x1400 and my girfiend have some laptop not even with full hd ) :) would be great to implemen this as well, and if it possible make it spread also horizontal not only vetrical,but I'm not sure if it possible :)

    - and for choosing piece from list name as a option could be also great funionality,I madedropdown menu that readpieces from piecemanager but give up before Iwas able to use it on layout :)

    here islittle video of this
    https://www.dropbox.com/s/hcxq7udlosoehej/video.mp4
    I couldsahre my ugly little code but now Ileave for ester holiday and will not have acces to my pc to almost a week :(



    and I foun some error
    -at end of level creation special pieces can accour to the same piece twice ( and probably more than twice) there should be chech if pice is alresdy special and skip it and if all pieces are special make it more spcial like special five or just ignore it or soemthing

    - and I also had some problem with gravity but I was modyfiedgravity funcions so at soem point it doesnt wokr at all :p so in msot cases it probaby was my foul :p

    do you know any toos, notepad or soethig that can comapre 2 documents and see waht is difference? I modiffy ver 1.3.0 little bit, I change almost every script exept that in customiazation folcers and now I like nwe options and I would liek to marge those codes and have my modifications :)

    And again Congratulation to You and thank you for your work! :)
     
  14. niflying

    niflying

    Joined:
    Jul 11, 2012
    Posts:
    108
    Hi, could you give more detail abuout "make shade panel under rok" ? Orz please.
     
  15. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    First and foremost... i'm sooo sorry!!!... i disregarded a post since i need not reply to it... and since then, the forum had not been sending me alerts to new posts =\ ... been about nearly 1 week since last unread post... really sorry!

    No... unfortunately only one active type is used at any given time.... I do have a solution for you though...
    create a new PanelDefinition of the type you desire... then... in the script... override the onPanelDestroy() and state that onDestroy, change the panel to what ever panel you want to appear next!
    P.S.> you can create / overlay the sprites for your new PanelDefiniton "skin" to make it seem like there is two panels there :)

    yes... i was thinking of doing that too as i found it cumbersome to click on/off the feature :p... i'll get to it when i can... should be a simple fix / add-on...


    catering for multiple 'editor' screen resolution was not thought off.. could perhaps have a scaler to choose the scale of which the gui will appear.. but not in my TODO list for now...

    as for spreading vertically ( as the default spreads horizontally ) ... is by design... if it was up to me, i would want it not to spread at all but alas this is impossible with the built-in GUI controls... (or atleast i do not know of how to bend it to my will enough..)
    i actually purposely left the vertical spread disabled as it looked bad when i made the window big and the buttons are so far apart from each other ...
    i wouldn't reccomend it as it will sorta trim the words and you will end up something like "emp" instead of "empty" ...

    i tried my best to emulate this feature... however, i couldn't find the exact code i need to determine the location of the mouse... the current solution is actually a slight compromise of mouse position + a little adjustment... it works fine for single monitors but i think dual monitor screwed it up... I don't have dual monitors so i cannot tinkle with the codes and see if it works or not =\

    i could... but with every new checkbox, space is required... unless i hide it in the "panel 1" itself... will consider it thx :)

    lolx... not many ppl will take the trouble to name it properly :p ... will consider it but adding this feature is like adding bloatware =S


    not an error... it's by design... the very ugly truth is that... if your bonus was too much (i.e., a lot of conversion taking place) and if there is no more 'basic' piece to convert, it will end up in an infinite loop...
    of course, speaking about it now... you can always do a check to see if there is any normal piece left and if there is none, then only convert the other non-normal piece or disregard conversion altogether... but those elaborate codings were not priority when I was doing up the kit.

    there are probably many tools out there to let you compare two versions... even monodevelop has that tool... git also has it... as for how to use it? errr... don't ask me as i'm noob in this area... never really bothered learning how to use it...

    --------------

    once again REALLY REALLY sorry for not replying... i really didn't know about the msgs =\ ... **and here i thought it has gone quiet for a few days....**
     
    Last edited: Apr 24, 2014
  16. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    in the PieceDefinition, there is a onPieceClicked(GamePiece gp) function there... you can simply say...
    {
    gp.removePiece(); // removes the piece internally...
    // or
    gp.master.destroyBox(); // standard destroy call normally used... will show destroy effect and score etc...
    // or
    gp.master.forceDestroyBox(); // if you want to force a piece destroy even if the (isDestructible) bool is unticked...
    // or
    gp.destroyCall(); // even more basic than removePiece() as the onPieceRemoved() callback will not trigger...
    // or
    gp.master.convertToSpecial(??); // to convert the piece to something else?
    // or
    gp.master.setSpecialPiece(??); // same as convert, but has no triggers like score and visual effect etc...
    }

    plenty of options to choose from...


    hopefully this will give you an idea / help you?
    http://youtu.be/RBEw56fEHZ8
     
    Last edited: Apr 24, 2014
  17. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    thanks~!... did not promote it yet.. so actually it's a dead app on the market with no players :(... i'm adding a 3rd mission before i push for promotion :)

    no i won't be adding this to the JMF kit ... a feature not easily accomplished =/ ..

    the boss does not get hit diagonally... only through the top-bottom and sides... lolx.. but powers that run through it like horizontal and vertical arrow as well as bombs damages it aswell :)
     
  18. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    View attachment $BoardGUISetup.cs

    attached is the modifed BoardGUISetup.cs script located in scripts/area 51/editor related
    this BoardGUISetup is strictly for upgrading from JMFP v1.3.2+ only! ( or those whom has the selector feature)
    has the option of holding down ctrl-btn to quickly alternate between using/not-using the selector :) View attachment $BoardGUISetup.cs
     
    Last edited: Apr 24, 2014
  19. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Hmm, is this new with the latest update? i dont have a onPieceClicked Function in the PieceDefinition...
    only onPieceCreated and onPieceDestroyed.
    Cant update easily, too many changes made already :(
     
  20. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Pls check the main "PieceDefinition" if such method exist... It should be there probably since jmfp v1.3.0
     
  21. deiong

    deiong

    Joined:
    May 24, 2013
    Posts:
    79
    ive noticed quite a bit that when pieces fall down it tries to early to make a match. often the piece right above it would have matched as well .. is there a setting to not look for matches immediately until all pieces have settled from its column??
     
  22. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    the default behavior is first come first serve... as long as the current settled pieces can form a match, it will straight away make the match...

    ur proposal does not go well with "delayed gravity" enabled... this would mean that the entire column will need to be filled up to the top before any match is allowed... consider the situation if the match is across? would you then want all the 3 (or more) columns to fill before any match is made??

    with delayed gravity disabled, the columns typically moves in unison and settles in unison too... so there shouldn't be a problem there.

    if you want, u can reduce the board's check speed which will delay how often the routine checks for matches are made... the current default is 0.25s i think. *there are two board timers..1 for matches and 1 for gravity drop... can't remember which is which...
     
  23. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I don't see a onPieceClicked or similar Function there, maybe that should be in another place?
    I am using JMF Pro v1.3.1 and refer to the PieceDefinition in this location: JMF PRO\Scripts\area 51\Game Manager related\PieceDefinition.cs

    I'll send you the file via PM...
     
    JamesArndt likes this.
  24. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    oh i'm sorry... lolx!! ... onPieceClicked() is my own codes in my game and not in JMFP :p !!!
    you can easily make it tho :D
     
  25. deiong

    deiong

    Joined:
    May 24, 2013
    Posts:
    79
    is there a way to remove all shaded tiles from the board level with code? wanted to add a powerup that would do this... thanks :)
     
  26. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Code (csharp):
    1.  
    2. // if you don't have gm reference...
    3. GameManager gm = JMFUtils.gm;
    4.  
    5. foreach(Board board in gm.board){
    6.    if ( board.panel.pnd is ShadedPanel ) {
    7.       board.panel.setType( gm.panelManager.getComponent<BasicPanel>() , 0 );
    8.    }
    9. }
    10.  
    11. // unless however, you have a destroy animation and you prefer to reduce it's durability until it is destroyed...
    12. foreach(Board board in gm.board){
    13.    if ( board.panel.pnd is ShadedPanel ) {
    14.       while ( !(board.panel.durability < 0) ) {
    15.          board.panelHit();
    16.    }
    17. }
    18.  
    that general idea can be used for any panels and you can also change any panels to another type easily...
     
    Last edited: Apr 26, 2014
  27. cg_destro

    cg_destro

    Joined:
    Aug 13, 2013
    Posts:
    142
    Hey, I have quick question, I have a power to destroy any single piece but how to get something like stone panel board position to destroy it? I use piecetracker for getting position of what i clicked but it doesn't work where there is a panel but not piece like stone panel
     
  28. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    yes... you can't since there isn't any script to forward the call...
    what you can do is create a new script similar to PieceTracker but without the movement swipes... just something to forward the clicks... you can probably name it BoardTracker / PanelTracker :p
     
    Last edited: May 2, 2014
  29. cg_destro

    cg_destro

    Joined:
    Aug 13, 2013
    Posts:
    142
    any pointers how to start? I have no idea what should I do :) do panels need collides to get what is clicked or what else I'm little bit clueless here :)
     
  30. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    quite complicated and lots of places to modify...
    i'll just be brief...

    1) you need to create a PanelTracker script similar to PieceTracker but without the movement swipes
    2) you need to either :
    a) attach the script manually to each panel gameObject prefab you have... OR
    b) code the attachment via scripts during panel creation
    <Warning> apart from the new script (perhaps called PanelTracker); you will also need to attach the TK2dUIitem script as well as a box collider in order for 2dToolkit to register the click...

    3) add a new reciever to JMFRelay for the panel click... best not to mix with onPieceClick to help identify whether a panel or a piece was clicked..
    4) (optional) add the relay to PanelDefinition for the onPanelClick() for panel click stuff you want to code...
     
  31. cg_destro

    cg_destro

    Joined:
    Aug 13, 2013
    Posts:
    142
    Thanks kurayami88 :) thanks for answer, wasnt that hard to do as you scared me it will be :p

    another question, while age I ask how to make empty panel and you say

    For while I was trying to make it another way but now I would to try your way :) but when I do what you say to do it give me some errors :/ and stop making other pieces on board

     
    Last edited: May 5, 2014
  32. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi... do not use my earlier suggestion...
    put this code into "onGameStart(Board board)" instead...
    Code (csharp):
    1. board.piece.removePiece();
    e.g...
    Code (csharp):
    1.  
    2. public override void onGameStart (Board board)
    3. {
    4.     board.piece.removePiece();
    5. }
     
  33. cg_destro

    cg_destro

    Joined:
    Aug 13, 2013
    Posts:
    142
    THX! that was easy :)

    but I have hard one :)
    How to make different types of normal pieces? I want to make something like silver and gold coins that give different amount amount of money, and mana potions small and big ones that replenish different amount of mana? and so on? how to do this and make it work with all spawning and coloring of pieces in board layout window?
     
  34. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    you mean a piece you need to match-3 to gain mana/gold etc? ... either u re-use and enhance the current NormalPiece... else you make a new PieceDefinition that is not 'special' ... that will make it do the match-check ... then you define your new match conditions and tell it to do something extra...
     
  35. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    Has anyone integrated Nextpeer or similar multiplayer technology into this framework? I am about to embark on doing it myself, but thought it would be well worth the effort if someone has already done the work.
     
  36. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    I have not... perhaps others might have...
     
  37. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    One more question, any advice on how to have special tiles, like the bombs and rainbow tile available from a menu so I can add them as IAP's?
     
  38. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    item framework is not available ... but the CORE framework already made this possible...

    all you have to do is call the
    gm.board[x,y].panel.setType( "panelType" , "strength" ); to change the panels OR
    gm.board[x,y].convertToSpecial( PieceDefinition, skinNum ) ; to change the pieces

    places you can call this is when a click is registered... can be assigned or further relayed from "JMFRelay" script function named "onPieceClicked(x,y) { };
     
  39. dustinmckay

    dustinmckay

    Joined:
    Nov 25, 2013
    Posts:
    26
    Is there a way to protect or save the GameManagerPanel in each level. I have created 40 levels so far, but if I change the prefab, (like to add buttons etc) it reset every levels configuration.
     
  40. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    you need to fully understand how prefab works...
    1) all copies of a prefab will inherit the values/objects/components etc from the master prefab
    2) copies that have modified a value from the original will stay modified regardless of master prefab's value changes to master's value
    2.a) changed values that differ from the master will be "bolded" in the inspector <-- these bolded values are the ones that will not change regardless of master prefab changes
    2.b) any other changes to the master prefab will be inherited downwards towards all copies of it

    Notes : you do not need to "save" the master prefab each time you make a slight modification... only save the prefab if you want all other copies to inherit the changes (for copies that did not self modify the inherited changes)
     
  41. dong dong

    dong dong

    Joined:
    Jan 12, 2013
    Posts:
    4
    you do great job, it is amazing ,but it is expensive for me ,can you tell me when it will be madness sale discount.thanks.
     
    Last edited: May 16, 2014
  42. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    i just released a non-2d Toolkit version. Perhaps that will help... (but it is currently not optimized for mobile as it has many draw calls... you can self-optimize it when you change to your assets though).. and i also have a suggestion for you; i'll PM you about the info. Thanks~!

    here is the upcoming version for reference... :)

    v1.3.3
    -------------------------

    * Added a Unity2D version of JMFP. Does not rely on 2D toolkit to operate.
    However, it is not mobile optimized. (many drawcalls)

    * GameManager gravity check extremely minor changes.
    -> changed "countUnfilled()" to "countBlockedUnfilled()".

    * PortalA script minor bugfix. ( could not teleport if PortalB is in 'x = 0' column )

    * BoardLayout quick select option.
    -> has the ability to change mode between "click-for-next" "quick-select" via holding the 'ctrl' button.
     
  43. vicenterusso

    vicenterusso

    Joined:
    Jan 8, 2013
    Posts:
    130
    Hi, is it possible to make the animations more fluid, like "Ultimate Match-3 Starter Kit" ? I mean, make a small acceleration if there is a whole column empty, and make the pieces not stuck each cell when falling?
     
  44. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    there's are options in the GameManager inspector called "delayed gravity" for the "stuck pieces" as well as "accelerated velocity" which will make the pieces drop faster if there are more empty spaces...
     
  45. vicenterusso

    vicenterusso

    Joined:
    Jan 8, 2013
    Posts:
    130
    I have tweaked a bit with these values but accelerated velocity doesnt seems to make any difference, and when I turn off delayed gravity, there are still small stucking pieces... is it possible to show us a demo with these values?
     
  46. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    perhaps you can further elaborate what you actually want to achieve in detail... ?
     
  47. UnityHB

    UnityHB

    Joined:
    May 24, 2014
    Posts:
    20
    Just purchased the Pro version and so far Im loving your work. Just had one question regarding the winning conditions. Is there currently a way to have more the one winning condition. For example if its isscoregame (Score= 1000) and also isshadedgame are checked when score reaches 1000 gameOver. Is there a feature that will check all conditions before gameOver if multiple game winning features are selected.
     
  48. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    Thank you for using my JMF engine~!
    The basic WinningConditions is for simple game play only. Custom scripting/modification to it is needed to suit the individual needs of the game you are trying to make. This is the reason why the WInningConditions script was left in the "customisables" folder
     
  49. UnityHB

    UnityHB

    Joined:
    May 24, 2014
    Posts:
    20
    Ok, thanks I was just making sure. I was able to make the adjustments I needed
     
  50. johnnydj

    johnnydj

    Joined:
    Apr 20, 2012
    Posts:
    211
    Hi there.
    Your kit is amazing.

    A glitch when using portals:

    if there are no more moves left and the board is reset, there will be tiles placed on top of the portals and this will break the portals functionality.
    I found the function for board reset, but what could I modify there so it doesn't put any tiles on top of the spots that have a portal?
    Code (csharp):
    1.  
    2. IEnumerator resetBoard() {
    3.         animScript.doAnim(animType.NOMOREMOVES,0,0);
    4.         JMFRelay.onNoMoreMoves();
    5.         yield return new WaitForSeconds(noMoreMoveResetTime);
    6.         notifyBoardHasChanged(); // reset the board status
    7.         // for the board width size
    8.         for( int x = 0; x < boardWidth; x++) {
    9.             // for the board height size
    10.             for( int y = 0; y < boardHeight; y++) {
    11.                 //reset the pieces with a random type..
    12.                 board[x,y].reset(pieceTypes[0], ranType());
    13.             }
    14.         }
    15.         JMFRelay.onComboEnd();
    16.         JMFRelay.onBoardReset();
    17.         isCheckingPossibleMoves = false;
    18.     }
    19.  
     
    Last edited: May 25, 2014