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. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,

    On collect game , why is setup Types restricted to only 7.

    Code (CSharp):
    1. for(int x = 0; x < gm.pieceTypes.Length;x++){ // creates the visual cue on the panel
    The reason I ask because I tried to use elements 0,3, 5, 9 but it will not allow any elements beyond 7 to show, some reason?

    John
     
  2. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    I am assuming you are talking about the collect type game mode? the default script ensures that the types do not go beyond your "Num of Active Types" setting in the GameManager... this is to ensure that players can win the game if the designer set to get a certain color which is not given during the game (AKA impossible to win).

    If i'm mistaken on what you have said... please do clarify...
    Thanks~!
     
  3. theubie

    theubie

    Joined:
    Mar 27, 2015
    Posts:
    1
    Really like this asset and am considering picking it up for a game idea I'm working on in the near future, but was wondering if it would fit with what I'm planning on doing.

    I plan on having a game where the match 3 gems segment isn't the direct focus of the game, but rather is a mechanic that changes the game play itself. Kinda like a game like GemQuest meets an incremental upgrade game. Was wondering how difficult it is to change the scoring system to work with outside functions. i.e. making a match three throws an event that the other game objects respond to.

    Is this something that is doable with relative ease for one with a solid programming background?
     
    kurayami88 likes this.
  4. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,

    Thanks for your interest...:)
    if you have a solid programming background... it'll be easy for you ;)
    just so u know... the WinningConditions is not bounded with the game engine... it is merely like an add-on to finalize and stop the game when need be... if your game is infinite, so be it :D
    if you are skilled enough, you can do all sorts of crazy stuff in the engine xD
     
  5. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,

    I am looking for a way to obtain the x,y position of a panel, I can get an alert from :-

    Code (CSharp):
    1. public override void onPanelDestroy(BoardPanel bp){
    2.         Debug.Log ("panel destroyed = " + bp.durability);
    3.     }
    but cannot see a way to obtain the actual position for any particular panel, I have scoured through GameManager and Panel Tracker without seeing any useful method.

    I want to instansiate a custom animation prefab from that position on destroy when durability = -1.

    Would you know how I can achieve this.


    John
     
  6. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    It's very easy... Each of the calling function will provide the board panel "bp" reference... You can simply call "bp.master.arrayRef" to get the board reference position of type int[] ... =)
     
  7. yohami

    yohami

    Joined:
    Apr 19, 2009
    Posts:
    124
    Hi, is this Unity5 compatible?
     
  8. yohami

    yohami

    Joined:
    Apr 19, 2009
    Posts:
    124
    *Im interested in the PRO version
     
  9. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    the asset can be upgraded by calling the Unity5 upgrade API... but there are currently two known bugs... which are:-
    1) the AudioSource bugged... the SFX and BGM use to run on the same AudioSource but doesnt work correctly in Unity 5... a very simple fix is to create a new AudioSource object and assign the SFX and BGM their own AudioSource.

    2) the gravity tweening is jaggy (lag-like) on Unity 5... but has nothing to do with my engine... it is more of a LeanTween issue... reported that an older LeanTween version seems to be working fine... I need to update my API calls for LeanTween to use the latest version but I have not verified if LeanTween itself is Unity5 ready as of current.
    ----------------
    as for the match engine itself... no worries there

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

    I'll need to update my LeanTween API call to be compatible to the newest LeanTween version.... I havent got to it yet sorry.
     
  10. yohami

    yohami

    Joined:
    Apr 19, 2009
    Posts:
    124
    Thanks, I just asked the LeanTween guy and he confirmed it's compatible with Unity5. I also tried it on a new project and seems to be all OK

    I'll purchase the PRO version later today or monday. I need some heavy customization of it but Im new to Unity (Im coming from flash AS3 - I am a badass coder but Im just going through Unity beginner tutorials). Are you available to do changes for a fee, or if not can you recommend somebody who knows the ins and outs of your engine? Thanks
     
  11. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    perhaps the I need the new LeanTween engine.... the current version is older and has issues with Unity5. I will need to upgrade the API calls as mentioned earlier.

    In terms of recommendations, I have none so far... but I do accept customisations work :)
    do provide me with your requirements and we can proceed from there :D
     
  12. yohami

    yohami

    Joined:
    Apr 19, 2009
    Posts:
    124
    Cool
     
    kurayami88 likes this.
  13. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    to who ever is still following this thread...
    ---------------
    1) i am thinking of removing the JMF Basic from the store... it is highly outdated and deprecated... let me know otherwise...

    2) i am thinking of dropping the JMFP 2D Toolkit support for future updates... it takes effort to cross-update two similar assets and ensure they are both in sync... with Unity2D in high-gear and Unity5 out... i highly doubt anybody is still interested in the 2D Toolkit version right? let me know otherwise...

    3) I am working on multi-panel support :D ... it's basically just multi-layered panels but the current active will still be only 1 panel of all the layers.... it is technically already done but i'm not going to push it for public release just yet... i'm also thinking of including sub-panels (panels in-between the main panels; e.g. walls between panels) ... I have yet to complete that yet and it may take time.

    -------
    the next update will be a major release bumping it to version 3.0 :) ... release date? no where near yet... will let u know...
     
  14. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    Me - I am following :)

    1) *shrug* I bought the pro version.
    2) Yep.. not using 2dtk anymore so - I am with you on that one.. especially since I would like to see more features in the application..
    3) SWEET.
    3.5) Any chance of borders for the puzzles? Trying to keep a BG image that matches the outline of the puzzle box is a royal pain in the ass.

    Thanks!!
     
    kurayami88 likes this.
  15. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    what do you mean by borders for puzzles? if you meant borders as in the board outline borders... ?
    ** sorry, statement withdrawn for false info**
     
    Last edited: May 5, 2015
  16. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    304
    Yep - board outline borders: I looked through the JMF-Pro hierarchy.. I don't see anything, searched the asset-store for anything you put out, didnt see it there, and searched the forums for your name + free-code, and I don't see any other mention than this one.. can you point me to this free-code section?

    Thanks!
     
  17. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    p.s.> check the JMFP / JSF online code reference ;)
    **********
    EDIT
    ** sorry, statement withdrawn for false info**
    I did not added it into the free code section I believe I did....
     
    Last edited: May 5, 2015
  18. CunningGrayFox

    CunningGrayFox

    Joined:
    Jan 7, 2014
    Posts:
    24
    I'm still following as well. I haven't used 2D Toolkit since you forked JMF Pro to work with Unity 2D features. I'm cool with dropping support for it.

    Excited about JMF Pro 3.0!!!
     
    kurayami88 likes this.
  19. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    How about some cool animations.???
    Combining JMF and JSF.......?

    Dreaming again................;)
     
    kurayami88 likes this.
  20. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    sorry i'm not an animator :(
    ----
    JSF and JMF can be used in the same project... but working together on the same scene... can't :(
     
  21. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Announcement

    it appears more and more ppl are using the v2.1.5 but have not complained about it yet ... very sorry... the special piece creation during match goes off-center and not created at the swipe area, but at the beginning of the match-line instead... quite annoying and not the intended behaviour...
    I did a minor board update from v2.1.4 without checking the consequences thinking it was for the better...
    please change the GameManager.cs script if you are using this v2.1.5 latest version. (link to the fixed script provided below)

    https://drive.google.com/folderview...JObS1jdVlJWjd4UnZkSHNlOHZUejRGakE&usp=sharing

    ------------------------
    on a good new note....
    the CORE engine for JMFP v3 is ready alive and kicking~!
    unfortunately now i have to re-design the BoardLayout script to accomodate the new features.... thinking about it give me headache as I have no current idea on how to approach the most feasible design.

    the problem?
    i could very well just leave the current state of the BoardLayout as it is... it is by far a very efficient setup tool already....
    but it will not take advantage of the new engine feature which is multi-panels and sub-panels of which is available (currently) through API coding only...

    to enable multi-panels in the board layout...omg the horror that i need to change the current mechanism which only has 1 panel layer.... so erm... clicck to open a new window that selects more panels? no more direct panel modification? omg HOW?!

    to top it off... adding more buttons (the subpanels) and its related strength... i can't think of a good design to accommodate two new buttons for subpanels without clogging up the view of the current boardLayout already....

    ---------------------------
    if you think you have a good boardLayout design that can accommodate all the below... let me know :-
    multi-panel + its strength field
    the current state of the piece setup complexity (color grouping, weights, piece type)
    and subPanels (ESPECIALLY the view view for hex boards) OMG THE HEX board ! *flips table* it is so much more complex to position the view button of a subPanel compared to a square board design .... *sigh*
     
  22. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,

    The new GameManager.cs file is identical to one I already have.

    John
     
    kurayami88 likes this.
  23. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    good news~!

    JMFP v3.0.0 is ready to go~! ... all that is left is to push it to the asset store and wait for approval :D
    if you want to sample the hard work I have made.... please view the new demo...
    http://goo.gl/cofAhU
    ** you'll notice it's very similar... but look at the "portals" & "custom" demo ... you'll notice the difference immediately? :D

    -------------
    hopefully i have not forgotten to update/change anything in the asset ..... i wouldn't want an update revision just coz perhaps i forgot the change a title :p

    and before you go all crazy about the new update... FAIR WARNING ... JMFP v3 is not fully compatible with v2 ... mainly because I have re-arranged the panel script order in the PanelsManager .... (order of the panels HIGHLY matters now *if you are using multi-panels with auto-sort feature*)

    the most you need to do is update your PanelsManager...
    a tip :- if you already have a custom master prefab going, keep the old prefab as it is... it SHOULD work without you touching anything :D
    then you can make a NEW master prefab for multi-panels in your new levels :D

    and considering the amount of optimizations and script changes i have done, there will not be any manual update logs from previous versions prior to v3 ...

    ----------

    oh... and before i forget... i will also need to make a new video to help users use the new V3... the match engine is as powerful as it is ever going to get :)

    v3.0.0
    -------------------------

    * (New) Multi-Panel feature
    - with multi-panel auto-sort feature (API only)

    * (New) Sub-Panel feature

    * (New) Dynamic board re-position / re-size ability

    * (New) Pieces can ignore 'pop-specials' at the end

    * BoardLayout upgraded to accommodate Multi/sub panel feature

    * Major optimization & minor bugfixes of asset
    - pieces / panels / sub-panels now have shorter (and easier) API parameters
    - Improved Landslide code
    - Improved 'Eliminate pre-start match' code
    - No longer need to call "NotifyBoardHasChanged()"
    - WinningCondition 'get-Types' mode bugfix

    * Compatible with JMFP v2.x vanilla asset settings (except PanelsManager script-order)
    - BoardLayout may need to be re-adjusted per prefab requirement.
     
    Last edited: May 21, 2015
    NeoUnity likes this.
  24. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,
    Thanks for the update, I just used Diff Merge to manually update, no problems so far....

    Any chance you can point me in the direction how to get suggested piece to suggest the three pieces on a possible match not just the one as it is now.
    The options being either one or all possible suggestions.

    Code (CSharp):
    1. // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    2.     // possible moves detector + suggestor  ( DO NOT TOUCH UNLESS NECCESSARY~! )
    3.     // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    4.    
    5.     // moves detector phase 1
    6.     void detectPossibleMoves() {
    7.        
    8.         //checks through each board boxes
    9.         if(!checkedPossibleMove && !isCheckingPossibleMoves){
    10.             isCheckingPossibleMoves = true;
    11.             for (int x = 0; x < boardWidth ; x++){
    12.                 for (int y = 0; y < boardHeight ; y++) {
    13.                     if( board[x,y].isBeingDelayed || board[x,y].isFalling || board[x,y].isActive ) {
    14.                         isCheckingPossibleMoves = false;
    15.                         return; // do not continue, wait for board to clear and stabilize
    16.                     }
    17.                 }
    18.             }
    19.             checkedPossibleMove = true; // once we checked, no need to check again until needed
    20.            
    21.             JMFRelay.onBoardStabilize();
    22.  
    23.             suggestedBoards.Clear(); // remove any outstanding suggested boards...
    24.             foreach(Board _board in board){
    25.                 if( _board.isFilled && _board.panel.isSwitchable() &&
    26.                    checkNeighbourMatch(_board,_board.piece.slotNum) ) {
    27.                     // recognize possible moves and save the piece location
    28.                     suggestedBoards.Add(_board);
    29.                 }
    30.             }
    31.            
    32.             if (suggestedBoards.Count == 0) { // no more possible moves
    33.                 StartCoroutine( resetBoard() ); // reset board in co-routine mode for delayed event
    34.             }
    35.             else {
    36.                 // suggest the found possible move to player
    37.                 suggestedPieces.Clear(); // clear the current list
    38.  
    39.                 // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    40.                 // to show all the suggested piece..
    41. //                foreach(Board _board in suggestedBoards){
    42. //                    suggestedPieces.Add(_board.piece.thisPiece); // add the new chain to the list
    43. //                }
    44.                 // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    45.  
    46.                 // ====================================
    47.                 // to show a random suggested piece...
    48.                 suggestedPieces.Add(suggestedBoards[Random.Range(0,suggestedBoards.Count)].piece.thisPiece);
    49.                 // ====================================
    50.  
    51.                 suggestedBoards.Clear(); // remove stored memory
    52.                 pieceOriginalSize = suggestedPieces[0].transform.localScale; // remember the current size
    53.                 StartCoroutine("suggestPiece"); // its a string coroutine so that we can use StopCoroutine!
    54.                 isCheckingPossibleMoves = false;
    55.             }
    56.            
    57.         }
    58.     }
    59.    
    John
     
  25. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,
    it is currently not available... but possible through alterations... *i did not include it coz it'll cost more processing*
    it'll require a new list (or several, 1 for each suggestion) to remember which pieces are in a set... perhaps a dictionary...

    i'll get back to you on it... perhaps i should add the feature to the kit having an option to display all or just 1 .... =/ ....
     
  26. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    @shoni.wheeler

    i updated to JMFP v3.0.1
    let me know what you think of it :)
    *FYI, as usual, the engine doesn't discriminate on best / good moves... just any random legal move
     
  27. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,

    Its excellent, you really do not waste any time do you, I only diffed GameManager.cs and will check the other files later.

    One thing I noticed, not a problem. I was running a scene with a row of walls across the centre and it showed the suggested pieces above and below the wall, which cannot be matched because of the wall, so like you say it is purely random and just one of those things.

    John
     
    kurayami88 likes this.
  28. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,

    noted on your feedback... it should not be the case.... the suggested piece "must" provide a legal move.... that is also the only method used to determine if the board should be reset (when no more legal moves)

    I will look into the codes again.... perhaps I missed something regarding the new sub-panels
     
  29. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    @shoni.wheeler

    hahaha... such a simple mistake... :p
    i forgot to include the subpanel (isSwitchable) into the suggested piece.... i'll just put it in...
     
  30. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    @shoni.wheeler

    I did not want to make a new version iteration for the small hiccup... please accept the fix as part of v3.0.1 ... i've updated the asset in the downloads folder.... do pull it again and try again :)
    ========
    do let me know if there are any other 'hiccups' :)
     
  31. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,
    It would have been fine as it was, Thanks.

    John
     
  32. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    no it will not be fine... =/
    the player could be stuck mid-game if that move was thought to be the last legal move (but in actual fact it is not legal)
    it had to be rectified ASAP :D
    ----
    please do merge the WinningConditions too if you are using my provided logic :)
    it's not crititcal but the last 'pop-special' could upset a player who could have gotten a few extra points :)
     
  33. shoni-wheeler

    shoni-wheeler

    Joined:
    Oct 25, 2014
    Posts:
    102
    Hi Kurayami,

    Bit of a hiccup with that revision.

    Error :
    Code (CSharp):
    1. IndexOutOfRangeException: Array index is out of range.
    2. (wrapper managed-to-managed) object:ElementAddr_3_8 (object,int,int,int)
    3. Board.get_subPanelBottomRight () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/Board.cs:101)
    4. GameManager.checkThisPosition (Int32 xPos, Int32 yPos, Int32 mType, Check dir) (at Assets/JMF PRO/Scripts/area 51/Game Manager related/GameManager.cs:1044)
    5. GameManager+<switchPositions>c__IteratorE.MoveNext () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/GameManager.cs:1669)
    6.  
    That is a clean project.

    John
     
    kurayami88 likes this.
  34. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    Hi.

    It's nice to see that version 3 version continues 2DToolkit.

    Thanks for the effort !!
     
  35. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    Hi.

    I want to do every Normal Piece with a different Piece Destroy Effect according to their color.

    What would be the best way to do it?

    Thank you.
     
  36. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    you can remove the global piece destroy effect....
    then in the NormalPiece script > onPieceDestroy() , place a switch-case for the piece slotNum and call your individual effects :)
     
  37. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    Hi. Thank you.

    I install JMF and After i install PoolManager JMF, but still gives me an error. I put the image. "A Pool whith the name ´Panels' not found"

    We must do something besides matter Poolmaneger ?. You have to configure something? I have no idea how it works PoolManager

    Thank you.

    poolmanager.jpg
     
  38. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15

    Apart from the above, I find another failure.
    If I turn "Using Pool Manager", the "Eliminate Start Pre Match" option is ignored and not working.

    thanks
     
  39. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    I must be very clumsy .... Within NormalPiece.cs no function called onPieceDestroy ()

    I do not hear anything.
     
  40. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Import PoolManager AFTER importing JMF... import JMF first ~
    *this is because JMF has a dummy poolManager script... importing JMF last will result in the dummy script overwriting the originals...*

    =================
    as well with a lot of programming... some or all functions cease to work correctly if there is an error being thrown out by the system.... fix your poolManager first and try again :)

    the normal piece had the virtual function removed.... you can add it back by adding the function "public override void onPieceDestroy(GamePiece gp) { } "
     
  41. NeoUnity

    NeoUnity

    Joined:
    Sep 4, 2013
    Posts:
    156
    Thanks for the update :)
    Are there still two above bugs on Unity5?
     
    Last edited: May 26, 2015
    kurayami88 likes this.
  42. NeoUnity

    NeoUnity

    Joined:
    Sep 4, 2013
    Posts:
    156
    Can you tell me where I can find the reference to the NormalPiece's "weight"?
    All example scenes has no "Weighted Spawn" & "Weights" on NormalPiece.
     
    kurayami88 likes this.
  43. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Last I checked on unity 5.0.1,
    Yes the audio bug is still there... But I have done alternative fix for the problem... Shouldn't be an issue if you use two audio source instead of 1 which is set by default in the latest JMF release.

    I've also updated the LeanTween api and provided LeanTween v2.27... You can always get the latest LeanTween if it's available... So far no other api compatibility issues.
    The latest LeanTween has better performance on unity5, buy if you purposely scan for lags, you'll notice the performance is still not butter smooth as compared to unity 4

    The weights are available on the normal piece script in the piece manager GameObject as well as board layout script... Depending on whether u want to set the initial board setup or during game play Spawn new pieces. Both are available for you to set =)
     
    NeoUnity likes this.
  44. NeoUnity

    NeoUnity

    Joined:
    Sep 4, 2013
    Posts:
    156
    1. Is it possible on "Unity2d" same as 2dTk mask?
    2. Is it good for the performance(include drawcall) compared Unity2d to 2dTk
     
    Last edited: May 26, 2015
  45. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    Hello. I do what you do.But still it gives me an error. I put a video for you to see exactly what happens. Unity 5.0.1f1 have installed.

    A greeting.

    Code (CSharp):
    1. <iframe width="560" height="315" src="https://www.youtube.com/embed/9IuiNishVa0" frameborder="0" allowfullscreen></iframe>
     
  46. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    This is the detail of the error:

    KeyNotFoundException: A Pool with the name 'Panels' not found.
    Pools=[]
    PathologicalGames.SpawnPoolsDict.get_Item (System.String key) (at Assets/Plugins/PathologicalGames/PoolManager/PoolManager.cs:406)
    BoardPanel.createDefaultPanel () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/BoardPanel.cs:342)
    BoardPanel.createBackPanel () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/BoardPanel.cs:220)
    BoardPanel.createPanels () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/BoardPanel.cs:209)
    BoardPanel.initPanels () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/BoardPanel.cs:153)
    BoardPanel.setType (.PanelDefinition newDefinition, Int32 strength) (at Assets/JMF PRO/Scripts/area 51/Game Manager related/BoardPanel.cs:77)
    BoardLayout.setupGamePanels () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/BoardLayout.cs:123)
    GameManager.preGameSetup () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/GameManager.cs:178)
    GameManager.Awake () (at Assets/JMF PRO/Scripts/area 51/Game Manager related/GameManager.cs:1649)
     
  47. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    Hi,

    Thanks for the feedback... yes, i messed up the script order again.... the current situation (if you want to know) is that the GameManager is using the pool 'before' PoolManager is created... PoolManager need to be created first *sigh*

    There are two ways about this...
    1) Place "PathologicalGames.SpawnPool" script execution order above GameManager
    Edit > Project Settings > script execution order .... drag and drop the SpawnPool script into it and set it to -200 (or as long as it is above GameManager)
    p.s.> this method needs to be re-done everytime you import a new version of poolManager....

    2) I will need to revise the script so that it does not use a "pool" before PoolManager initiates again... i removed a feature from v2.x thinking it was no longer necessary... it seems it does now... sorry my mistake!
     
    NeoUnity likes this.
  48. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    NeoUnity likes this.
  49. estudio3D

    estudio3D

    Joined:
    Apr 2, 2014
    Posts:
    15
    Thank you very much. I downloaded and I've replaced, and it works perfect. Without errors.

    Thank you very much for everything. :)

    With regard to that. I solved it another way, my schedule is very precarious and very barbaric, lol .. but I did that and it worked.
    I modified the script CustomAnimations.cs

    Adding the public GameObjetcs all initially.


    Code (CSharp):
    1. public class CustomAnimations : MonoBehaviour {
    2.  
    3.     //MIO - Custom Destroy FX - DFXn
    4.    
    5.     public GameObject DestroyFX0;
    6.     public GameObject DestroyFX1;
    7.     public GameObject DestroyFX2;
    8.     public GameObject DestroyFX3;
    9.     public GameObject DestroyFX4;
    10.     public GameObject DestroyFX5;
    11.     public GameObject DestroyFX6;
    12.     public GameObject DestroyFX7;
    13.     public GameObject DestroyFX8;
    14.    
    15.     //MIO - END
    And then, in the case GOBALDESTROY, I put these conditions. As I said before, my schedule is very archaic, but take the opportunity to share.
    Default Piece Destroy Effect selectión = none. For OK Results.

    Code (CSharp):
    1. public void doAnim(animType animType, int x, int y){
    2.         switch (animType){
    3.         case animType.GLOBALDESTROY :
    4.             if(PieceDestroyEffect){
    5.                 if(JMFUtils.isPooling){
    6.                     PoolManager.Pools[animPoolName].Spawn(PieceDestroyEffect.transform, gm.board[x,y].position, Quaternion.identity);
    7.                 } else {
    8.                     Instantiate(PieceDestroyEffect, gm.board[x,y].position, Quaternion.identity);
    9.                 }
    10.             }
    11.  
    12.             //MIO  Destroy by Colors
    13.             if(gm.board[x,y].piece.slotNum == 0){
    14.                 if(JMFUtils.isPooling){
    15.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX0.transform, gm.board[x,y].position, Quaternion.identity);
    16.                 } else {
    17.                 Instantiate(DestroyFX0, gm.board[x,y].position, Quaternion.identity);
    18.                 }
    19.             }
    20.             if(gm.board[x,y].piece.slotNum == 1){
    21.                 if(JMFUtils.isPooling){
    22.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX1.transform, gm.board[x,y].position, Quaternion.identity);
    23.                 } else {
    24.                 Instantiate(DestroyFX1, gm.board[x,y].position, Quaternion.identity);
    25.                 }
    26.             }
    27.             if(gm.board[x,y].piece.slotNum == 2){
    28.                 if(JMFUtils.isPooling){
    29.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX2.transform, gm.board[x,y].position, Quaternion.identity);
    30.                 } else {
    31.                 Instantiate(DestroyFX2, gm.board[x,y].position, Quaternion.identity);
    32.                 }
    33.             }
    34.             if(gm.board[x,y].piece.slotNum == 3){
    35.                 if(JMFUtils.isPooling){
    36.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX3.transform, gm.board[x,y].position, Quaternion.identity);
    37.                 } else {
    38.                 Instantiate(DestroyFX3, gm.board[x,y].position, Quaternion.identity);
    39.                 }
    40.             }
    41.             if(gm.board[x,y].piece.slotNum == 4){
    42.                 if(JMFUtils.isPooling){
    43.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX4.transform, gm.board[x,y].position, Quaternion.identity);
    44.                 } else {
    45.                 Instantiate(DestroyFX4, gm.board[x,y].position, Quaternion.identity);
    46.                 }
    47.             }
    48.             if(gm.board[x,y].piece.slotNum == 5){
    49.                 if(JMFUtils.isPooling){
    50.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX5.transform, gm.board[x,y].position, Quaternion.identity);
    51.                 } else {
    52.                 Instantiate(DestroyFX5, gm.board[x,y].position, Quaternion.identity);
    53.                 }
    54.             }
    55.             if(gm.board[x,y].piece.slotNum == 6){
    56.                 if(JMFUtils.isPooling){
    57.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX6.transform, gm.board[x,y].position, Quaternion.identity);
    58.                 } else {
    59.                 Instantiate(DestroyFX6, gm.board[x,y].position, Quaternion.identity);
    60.                 }
    61.             }
    62.             if(gm.board[x,y].piece.slotNum == 7){
    63.                 if(JMFUtils.isPooling){
    64.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX7.transform, gm.board[x,y].position, Quaternion.identity);
    65.                 } else {
    66.                 Instantiate(DestroyFX7, gm.board[x,y].position, Quaternion.identity);
    67.                 }
    68.             }
    69.             if(gm.board[x,y].piece.slotNum == 8){
    70.                 if(JMFUtils.isPooling){
    71.                     PoolManager.Pools[animPoolName].Spawn(DestroyFX8.transform, gm.board[x,y].position, Quaternion.identity);
    72.                 } else {
    73.                 Instantiate(DestroyFX8, gm.board[x,y].position, Quaternion.identity);
    74.                 }
    75.             }
    76.             //MIO END
    77.  
    78.             break;
     
  50. kurayami88

    kurayami88

    Joined:
    Aug 30, 2013
    Posts:
    493
    sounds very dirty... the onPieceDestroy() should do well enough already....
    well at least it works for you :)