Advertisement
salahzar

memory con UUID

Mar 28th, 2014
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. string retro;
  3. integer MAX=0;
  4. integer max;
  5. integer counting;
  6.  
  7. list cards0;
  8. list cards;
  9.  
  10. show(integer link,string card)
  11. {
  12.    
  13.     list l=[ PRIM_TEXTURE,ALL_SIDES,card, <1,1,0>,<0,0,0>,0, PRIM_GLOW, ALL_SIDES, 0.0 ];
  14. //llOwnerSay((string)link+" "+llList2CSV(l));
  15.    llSetLinkPrimitiveParamsFast(link,l);
  16.  
  17. }
  18. showCard(integer link,string texture)
  19. {
  20.       llSetLinkPrimitiveParamsFast(link,[ PRIM_TEXTURE,ALL_SIDES,texture, <1,1,0>,<0,0,0>,PI/2, PRIM_GLOW, ALL_SIDES, 0]);
  21. }
  22.  
  23.  
  24. mischiacarte()
  25. {
  26.     // cards=[];
  27.     //integer i; for(i=1;i<=16;i++) cards+=llGetInventoryName(INVENTORY_TEXTURE,i);
  28.     list cards_=cards0;
  29.     integer l;
  30.     for(l=0;l<MAX;l++)
  31.     {
  32.         integer residual=llGetListLength(cards_);
  33.         integer random=(integer)llFrand(residual);
  34.         cards+=llList2String(cards_,random);
  35.         cards_=llDeleteSubList(cards_,random,random);
  36.     }
  37.     // cards=cards2; cards2=[];
  38. }
  39.  
  40. integer status=0; string  savevalue; integer savelink;
  41. integer starttime;
  42. string avatar;
  43.  
  44.  
  45.  
  46. integer connected(string a,string b)
  47. {
  48.     integer la=llListFindList(cards0,a);
  49.     integer lb=llListFindList(cards0,b);
  50.     integer rowa=la/2*2;
  51.     integer rowb=lb/2*2;
  52.    // llSay(0,"rowa: "+(string)rowa+" rowb: "+(string)rowb);
  53.     if(rowa==rowb) return 1;
  54.     return 0;
  55. }
  56.  
  57. default
  58. {
  59.     state_entry()
  60.     {
  61.         cards0=[
  62. "e4733907-206b-456b-9915-b0c03e3286ec","e4733907-206b-456b-9915-b0c03e3286ec",
  63. "eef451af-169b-4355-a07d-572b4f82996b","eef451af-169b-4355-a07d-572b4f82996b",
  64. "f6d3a14f-3799-4238-b68c-b5863e77a1e0","f6d3a14f-3799-4238-b68c-b5863e77a1e0",
  65. "70a25655-08ae-4c5f-a0de-8ec39b60b215","70a25655-08ae-4c5f-a0de-8ec39b60b215",
  66. "f5d2b8a6-b33e-4de9-9d38-5a531c0129ad","f5d2b8a6-b33e-4de9-9d38-5a531c0129ad",
  67. "236921f4-e7d2-426d-ba31-e65099932546","236921f4-e7d2-426d-ba31-e65099932546",
  68. "d58c5b52-d34c-4991-a8d6-c18d5d323675","d58c5b52-d34c-4991-a8d6-c18d5d323675",
  69. "b07e220a-cfc8-4867-8621-27ea885554fb","b07e220a-cfc8-4867-8621-27ea885554fb",
  70. "0762c399-7830-4756-830e-f4bc3c025f14","0762c399-7830-4756-830e-f4bc3c025f14",
  71. "90f13c7a-e461-4056-84c1-be97508b92d9","90f13c7a-e461-4056-84c1-be97508b92d9",
  72.  
  73. "530f6e1c-f298-453e-918a-5f442f1a4afb","530f6e1c-f298-453e-918a-5f442f1a4afb",
  74. "547d3176-9eb8-4857-8326-efd7c0891264","547d3176-9eb8-4857-8326-efd7c0891264",
  75. "547d3176-9eb8-4857-8326-efd7c0891264","547d3176-9eb8-4857-8326-efd7c0891264",
  76. "fc7b68d5-bb67-4a44-857e-5148bccafa6d","fc7b68d5-bb67-4a44-857e-5148bccafa6d",
  77. "9d99c8c9-14b0-471c-8313-59a07233a750","9d99c8c9-14b0-471c-8313-59a07233a750",
  78. "5f1c950f-054e-4bf1-b6b9-a9b0afa43fc2","5f1c950f-054e-4bf1-b6b9-a9b0afa43fc2",
  79. "404821c4-0199-44ca-85a8-5df45a8e1763","404821c4-0199-44ca-85a8-5df45a8e1763",
  80. "abd527ee-ecf5-4161-b28d-7ef4cc9accde","abd527ee-ecf5-4161-b28d-7ef4cc9accde",
  81. "eded66bb-33d4-449e-8fe5-93685fab3c4f","eded66bb-33d4-449e-8fe5-93685fab3c4f",
  82. "998b1bb3-a5e9-484d-aaec-5af6153c8e14","998b1bb3-a5e9-484d-aaec-5af6153c8e14",
  83.  
  84. "5c9b1ab4-0dc0-4f04-8049-85eda2bcce4a","5c9b1ab4-0dc0-4f04-8049-85eda2bcce4a",
  85. "f11ac3e7-0b55-49b6-be47-7d3981cd3504","f11ac3e7-0b55-49b6-be47-7d3981cd3504",
  86. "75f332ee-e6e0-4967-8b7f-aa1d08b55f36","75f332ee-e6e0-4967-8b7f-aa1d08b55f36",
  87. "06e92ab9-6562-49ad-a197-eb0051e0d051","06e92ab9-6562-49ad-a197-eb0051e0d051",
  88. "c12d1fa5-3a1d-4abc-9f8e-621b7e14d57a","c12d1fa5-3a1d-4abc-9f8e-621b7e14d57a",
  89. "fe298526-6e17-4533-a163-33a77765659f","fe298526-6e17-4533-a163-33a77765659f",
  90. "18889286-ddf0-48f2-95b5-b955417d6a44","18889286-ddf0-48f2-95b5-b955417d6a44",
  91. "dec7b622-b4a6-49ab-b9eb-34a4ebd2a0e4","dec7b622-b4a6-49ab-b9eb-34a4ebd2a0e4",
  92. "375ac268-a76d-4203-a7a8-4b67f3e5a0df","375ac268-a76d-4203-a7a8-4b67f3e5a0df",
  93. "8ff97362-f63e-4197-b4cc-a01d509fff2c","8ff97362-f63e-4197-b4cc-a01d509fff2c",
  94.  
  95. "d779e296-617a-4946-8b47-ccbcfe820978","d779e296-617a-4946-8b47-ccbcfe820978",
  96. "1ff10d0f-37de-402d-b591-23e351a02745","1ff10d0f-37de-402d-b591-23e351a02745",
  97. "7e87f115-adff-479a-ad5e-b7ee0ef4773e","7e87f115-adff-479a-ad5e-b7ee0ef4773e",
  98. "052b23ec-5aef-4d7d-9b4a-0e459a409045","052b23ec-5aef-4d7d-9b4a-0e459a409045",
  99. "a82c7626-07ad-4ddb-be4a-40a810e196d7","a82c7626-07ad-4ddb-be4a-40a810e196d7",
  100. "8fb216ed-d9e5-4548-8fa1-08ea5499637c","8fb216ed-d9e5-4548-8fa1-08ea5499637c",
  101. "83b42186-bb7e-4e63-95ba-fb009d5fa1df","83b42186-bb7e-4e63-95ba-fb009d5fa1df",
  102. "28999ddf-152d-40c2-bdd1-e6cea1fa14f8","28999ddf-152d-40c2-bdd1-e6cea1fa14f8",
  103. "0af2b216-32d1-451f-935a-ce37b55c1a21","0af2b216-32d1-451f-935a-ce37b55c1a21",
  104. "b0325fb9-dfc8-4a71-97ea-849fa0bd965c","b0325fb9-dfc8-4a71-97ea-849fa0bd965c"
  105. ];
  106. llSay(0,"Reset"); MAX=llGetNumberOfPrims();
  107.  
  108.         retro=llGetInventoryName(INVENTORY_TEXTURE,0);
  109.         mischiacarte(); max=MAX;
  110.         integer i;
  111.         integer j;
  112.        
  113.         for(i=0;i<MAX;i++){
  114.            // llSay(0,(string)i);
  115.                    // showCard(i+1,llList2String(cards,i));
  116.                 showCard(i+1,retro);
  117.        //llSleep(0.1);
  118.         }
  119.        // showbitmap();
  120.                      
  121.     }
  122.     touch_start(integer count)
  123.     {
  124.         avatar=llDetectedName(0);
  125.         llSay(0,avatar +" inizia il gioco");
  126.        
  127.         state gioca;
  128.     }
  129. }
  130.  
  131.  
  132. state gioca
  133. {
  134.     state_entry()
  135.     {
  136.         llSetTimerEvent(60);
  137.         starttime=llGetUnixTime();
  138.            
  139.         status=0;
  140.     }
  141.     timer()
  142.     {
  143.         llSay(0,avatar+" non sta giocando da più di 60 secondi... Mi libero per un altro giocatore");
  144.         llResetScript();
  145.     }
  146.     touch_start(integer count)
  147.     {
  148.         llSetTimerEvent(60);
  149.         integer link=llDetectedLinkNumber(0);
  150.        
  151.       string  value=llList2String(cards,link-1);
  152.     // llOwnerSay("value: "+value);
  153.       if(value=="") {
  154.           llSay(0,"Carta già scoperta");
  155.           return;
  156.         }
  157.         if(status==0)
  158.         {
  159.           //  llOwnerSay("status 0");
  160.             show(link,value);
  161.             status=1; savevalue=llList2String(cards,link-1); savelink=link;
  162.         }
  163.         else if (link!=savelink)
  164.         {
  165.            
  166.            // llOwnerSay("status "+(string)count);
  167.             show(link,llList2String(cards,link-1));
  168.             llSleep(1);
  169.             status=0;
  170.             string newvalue=llList2String(cards,link-1);
  171.            
  172.             counting++;
  173.             if(connected(newvalue,savevalue)==1){
  174.               //  llSay(0,"Indovinato");
  175.                 max-=2;
  176.                 cards=llListReplaceList(cards,[""],link-1,link-1);
  177.                 cards=llListReplaceList(cards,[""],savelink-1,savelink-1);
  178. llSetLinkPrimitiveParamsFast(link,[PRIM_GLOW,ALL_SIDES,0.1]);
  179. llSetLinkPrimitiveParamsFast(savelink,[PRIM_GLOW,ALL_SIDES,0.1]);
  180.                  if(max<=0)
  181.                 {
  182.                     llSay(0,avatar +" ha Finito il quiz in "+(string)(llGetUnixTime()-starttime+" secondi numero di mosse: "+(string)counting));
  183. llSleep(3); llResetScript(); return; }
  184.             }
  185.             else
  186.             {
  187.                 counting++;
  188.               //  llOwnerSay("Sbagliato");
  189.                 showCard(savelink,retro); showCard(link,retro);
  190.                 status=0;
  191.             }
  192.         }
  193.     }
  194. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement