játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5455
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2521

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2189
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1625
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] > 20 < [25] [30] [35] [40] [45] [46]
Kuz - Törzstag | 4455 hsz       Online status #121195   2009.11.05 13:28 GMT+1 óra  
Én azért csak kérnék egy példát, mert nekem eddig ez nem ment.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Clystron - Tag | 26 hsz       Online status #121194   2009.11.05 13:22 GMT+1 óra  
Idézet
kuzanth :
Ok, most úgy, hogy nem írod be, hogy
+= (RefTestMethod)Delegate.CreateDelegate(typeof(RefTestMethod), game, "TestMethod");
hanem beolvasol egy stringet egy változóba, és azt adod hozzá. Ugyanis itt most fordítási időben ismert a fgv, nekem viszont olyan kell, ahol futási időben derül ki a fgv neve. Nade mivel most itthon vagyok, ezért ránézek a lentebbi linkre, sztem az kell nekem.


Mindegy mikor adod hozzá, meg honnan, csak az objektum példánya ott legyen a kezedben, amiben ott van, aminek ott kell lennie. A többi már tervezés kérdése.
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
screat - Tag | 382 hsz       Online status #121193   2009.11.05 13:07 GMT+1 óra  
inkább nem szóltam
még csak padawan...
Dont worry, be hippy - Fanni :)
   
Kuz - Törzstag | 4455 hsz       Online status #121192   2009.11.05 12:57 GMT+1 óra  
Ha a biindingflagbe belerakom a staticot, és a metódusom is static, akkor működik a dolog, visoznt azzal meg nem fogom elérni a példányszintű metódusokat. Ki a franc találta ezt ki?
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Kuz - Törzstag | 4455 hsz       Online status #121190   2009.11.05 12:01 GMT+1 óra  
Ok, most úgy, hogy nem írod be, hogy
+= (RefTestMethod)Delegate.CreateDelegate(typeof(RefTestMethod), game, "TestMethod");
hanem beolvasol egy stringet egy változóba, és azt adod hozzá. Ugyanis itt most fordítási időben ismert a fgv, nekem viszont olyan kell, ahol futási időben derül ki a fgv neve. Nade mivel most itthon vagyok, ezért ránézek a lentebbi linkre, sztem az kell nekem.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Clystron - Tag | 26 hsz       Online status #121188   2009.11.05 10:45 GMT+1 óra  
Kód:
GUIEventHandler handler = (GUIEventHandler)Delegate.CreateDelegate(typeof(GUIEventHandler), Program.game, mi1);

Leegyszerűsítettem a példát, mert ezen a GUIEngine-en nem birok eligazodni:
Kód:
using System;

namespace ConsoleApp
{
    class Game
    {
        void TestMethod()
        {
            Console.WriteLine("reflection test");
        }
    }

    class Menu
    {
        public delegate void RefTestMethod();
        public event RefTestMethod TestMethodEventHandler;

        public Menu(Game game)
        {
            TestMethodEventHandler += (RefTestMethod)Delegate.CreateDelegate(typeof(RefTestMethod), game, "TestMethod");
        }

        public void Go()
        {
            if (TestMethodEventHandler != null)
                TestMethodEventHandler();
        }
    }

    static class Program
    {
        static void Main()
        {
            var game = new Game();
            var menu = new Menu(game);
            menu.Go();

            Console.Read();
        }
    }
}

Ezt a hozzászólást Clystron módosította (2009.11.05 11:06 GMT+1 óra, ---)
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
Matzi - Szerkesztő | 2521 hsz       Online status #121171   2009.11.05 07:23 GMT+1 óra  
Nincs mit. Igazából ami plusz, hogy kikeresi a delegate add függvényét, és azon keresztül próbálkozik.
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
Kuz - Törzstag | 4455 hsz       Online status #121170   2009.11.05 07:22 GMT+1 óra  
Idézet
Matzi :
Amit linkeltem, az nem jó?


Elnézést, elslisszantam meló közben a link fölött. Megsasoltam, és mintha lenne egy olyan rész, ahol run time csinál mindenféle trükköket. Otthon megnézem, sztem ez lesz az. Thx!
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
terbed - Tag | 233 hsz       Online status #121165   2009.11.05 07:13 GMT+1 óra  
Clystron
(Event-es példa terbed-nek, meg annak, aki nem érti Event Alatta megcallback pattern, ami pl c++ ban használható, ahol nincs event, se delegate)

Köszi!
   
Matzi - Szerkesztő | 2521 hsz       Online status #121161   2009.11.05 07:06 GMT+1 óra  
Amit linkeltem, az nem jó?
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
Clystron - Tag | 26 hsz       Online status #121158   2009.11.05 06:42 GMT+1 óra  
Úgy végül is annyira nem vészes. Este ránézek, de lehet addigra már jó lesz. Engem most inkább a 4.0-ás megoldások mozgatnak meg jobban és ha már így felmerült annak is nekirugaszkodok.
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
Kuz - Törzstag | 4455 hsz       Online status #121147   2009.11.05 06:03 GMT+1 óra  
Neeeeem, csak a betöltés dinamikus. Azért nem ment el az eszem teljesen.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Matzi - Szerkesztő | 2521 hsz       Online status #121145   2009.11.05 05:45 GMT+1 óra  
Szerintem nem lesz vészesen lassú. Egyszer be kell huzalozni és kész. Alapvetően ennyit el kell bírnia, és valljuk be, ez egy elég kényelmes lehetőség.

Elvileg utána már nem tér el semmiben a "hagyományos" megoldástól. Ugyanúgy befűzi a listába és kész. Arra kell vigyázni, hogy ne dinamikus játékobjektumok scriptelésére használja az ember.
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
Kuz - Törzstag | 4455 hsz       Online status #121144   2009.11.05 05:44 GMT+1 óra  
Ez csak a menü betöltésénél van így. Most az, hogy ezzel a loading time 1-2 másodperccel lassabb lesz...hát érzed, hogy ezt le tudod sajnálni. De ettől még az alkalmazás nem lesz lassú, nem? Mármint amikor már végeztünk a betöltéssel, és rendesen fut a progi, akkor ez ugyanaz, mintha simán a new eventhandlert használnám? Mert így hirtelen azt mondanám, hogy a végeredmény ugyanaz, mintha += new GUIEventhandler()-t írnék, csak ahhoz már fordítási időben tundni kell a dolgokat, itt meg pont, hogy csak futási időben derül ki, hogy mihez-mit rendelek. Ha bárhol hibádzik a meglátásom, szóljatok.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Clystron - Tag | 26 hsz       Online status #121143   2009.11.05 05:38 GMT+1 óra  
Idézet
kuzanth :
Ne adj isten az én problémámhoz tudnál tanácsot adni? Összefoglalva : futási időben bejövő stringek alapján kellene már meglévő metódusokat hozzárendelni szintén bejövő stringek alapján meghatározott elemek eventhandleréhez. Lentebb 3-4 hsz-szel írtam, hogy melyik részen van a hiba, abban kellene nekem némi segítség. A csatolt methodtest.zip pedig az a példakód, amit vs2008+xna3.0-val lehet használni szigorúan debug módban!


Ez valamiféle script-elési cucc akar lenni GUI menühöz? Amit te szeretnél ehhez az szó szerint 100* lassabb lesz, mint bármi más. Ennél egy fokkal jobb már egy LUA betét is, bár egy mostanra multiparadigmás nyelvben ez is egy kicsit hack kategória. Ha nem sürgős akkor azt mondanám, hogy jövő márciusban lesz nem egy, hanem rögtön 2 komoly lehetőség is ehhez. Ha mindenképp ez kell otthon ránézek. : O
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
Matzi - Szerkesztő | 2521 hsz       Online status #121142   2009.11.05 05:29 GMT+1 óra  
Nálam nem akarja megnyitni, gondolom hiányzik az XNA.
De nem erre van neked szükséged véletlenül?

Szerk:
666. hozzászólás... hát nem ördögi?
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
Kuz - Törzstag | 4455 hsz       Online status #121140   2009.11.05 05:03 GMT+1 óra  
Ne adj isten az én problémámhoz tudnál tanácsot adni? Összefoglalva : futási időben bejövő stringek alapján kellene már meglévő metódusokat hozzárendelni szintén bejövő stringek alapján meghatározott elemek eventhandleréhez. Lentebb 3-4 hsz-szel írtam, hogy melyik részen van a hiba, abban kellene nekem némi segítség. A csatolt methodtest.zip pedig az a példakód, amit vs2008+xna3.0-val lehet használni szigorúan debug módban!
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Clystron - Tag | 26 hsz       Online status #121139   2009.11.05 04:44 GMT+1 óra  
(Event-es példa terbed-nek, meg annak, aki nem érti Event Alatta megcallback pattern, ami pl c++ ban használható, ahol nincs event, se delegate)
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
Kuz - Törzstag | 4455 hsz       Online status #121138   2009.11.05 04:37 GMT+1 óra  
Most látom, hogy nem is ide postoltam a jó feltöltést. Szóval :

"
Na, feltöltöttem megint, most már semmit nem töröltem.
61-methodtest.zip
"
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
Clystron - Tag | 26 hsz       Online status #121136   2009.11.05 04:26 GMT+1 óra  
Idézet
bit.0x8000 :
Idézet
kuzanth :
Amúgy a delegate volt az, amit eddig sosem sikerütlt igazán megértenem.


Én azt nem értem mit nem értesz rajta. : O Egyébként az event-et nem bírod kinullozni, meg tud üzenetet is küldeni ennyivel több a delegate-nél, se több, se kevesebb.
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
Kuz - Törzstag | 4455 hsz       Online status #121031   2009.11.04 05:06 GMT+1 óra  
Nem úgy értettem ám, hogy ezt neked/nektek meg is kell tenned, hanem csak úgy, hogy a kód elvileg már szem előtt van, és elképzelhető, hogy valaki ránéz, és azt mondja, hogy 'hopp, a hiba az, hogy...'.
Amúgy a hiba vhol itt keresendő :
MethodTest\MethodTest\MainMenuLoader.cs -->
Kód:
MethodInfo mi1 = typeof(Game1).GetMethod(MenuStruct.EventName,
                            BindingFlags.Public | BindingFlags.Instance);

                        p_gMenu.MenuElements[m_iElementCounter].GUIEventHandler +=
                            Delegate.CreateDelegate(typeof(GUIEventHandler), mi1) as GUIEventHandler;
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
bit.0x8000 - Törzstag | 574 hsz       Online status #121029   2009.11.04 04:58 GMT+1 óra  
Idézet
kuzanth :
Természetesen a probléma reprodukálásához nincs szükség a dll-re, egy akármilyen eventhandlerre rá lehet kötni az eseményt.



Hint:
Amikor segítséget kérsz, mindig abból az alapfeltételezésből indulj ki, hogy mindenki egy lusta disznó és nem szeret beleirkálni mások kódjába.
   
Kuz - Törzstag | 4455 hsz       Online status #121028   2009.11.04 04:41 GMT+1 óra  
Idézet
kuzanth :
public delegate void InitDelegate();
public event InitDelegate InitEvent;
Ez a kettő valahogy nagyon hasonló. Amúgy a delegate volt az, amit eddig sosem sikerütlt igazán megértenem.


Közben egyik kolléga mondta, hogy a delegate határozza meg az eventhez köthető metódus típusát, paraméterlistáját. Lehet amúgy, hogy valahol pont itt száll el az én megoldásom is, de ezt majd csak otthon tudom letesztelni.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
bit.0x8000 - Törzstag | 574 hsz       Online status #121027   2009.11.04 04:21 GMT+1 óra  
Idézet
kuzanth :
Ha arra célzol, nyugodtan lehet használni, ámbátor olyan messze van az még a végső változattól, hogy ihaj. A játék kódja is letölthető lesz, a contentet leszámítva, de eőször oldjuk meg a stringes dolgot, pls. Vagy mire gondoltál a feilcserélők alatt?



Konkrétan arra gondoltam, hogy a linkelt cuccban hivatkozás van, GUIEngine meg nincs.
   
Kuz - Törzstag | 4455 hsz       Online status #121026   2009.11.04 04:18 GMT+1 óra  
Ha arra célzol, nyugodtan lehet használni, ámbátor olyan messze van az még a végső változattól, hogy ihaj. A játék kódja is letölthető lesz, a contentet leszámítva, de eőször oldjuk meg a stringes dolgot, pls. Vagy mire gondoltál a feilcserélők alatt?

Jaaaa, hogy nincs benne a dll. Ok, szorry, elfelejtettem, hogy feltöltés előtt töröltem a debug mappát, mondván arra úgysincs szükség. Akkor otthonról majd este pótolom. Természetesen a probléma reprodukálásához nincs szükség a dll-re, egy akármilyen eventhandlerre rá lehet kötni az eseményt.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
bit.0x8000 - Törzstag | 574 hsz       Online status #121024   2009.11.04 04:16 GMT+1 óra  
Idézet
kuzanth :
Feltöltöttem : 61-methodtest.zip
Annyi, hogy mivel nagyon sok minden ki van kommentezve, mert kellene sok content, meg minden, ezért mindent leegyszerűsítettem, de a MethodInfoig most már eljut. Ott kéne valamit ügyködni, hogy hozzá is rendelje azt. Ja, VS2008 kell hozzá.



Asszem a GUIEngine-t ellopták a fájlcserélők.
   
Kuz - Törzstag | 4455 hsz       Online status #120987   2009.11.03 15:49 GMT+1 óra  
Ezt csak amolyan megelőzésképpen mondtam.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
sirpalee - Tag | 1282 hsz       Online status #120981   2009.11.03 15:31 GMT+1 óra  
Mikor mondtam én, hogy baj egy xna project?
raytraceisten és übermedic
   
Kuz - Törzstag | 4455 hsz       Online status #120978   2009.11.03 15:13 GMT+1 óra  
Igen. Baj? Mármint Te szerinted, nem sirpalee vagy Asylum szerint.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
bit.0x8000 - Törzstag | 574 hsz       Online status #120951   2009.11.03 13:11 GMT+1 óra  
kuzanth: Én meg letöltöttem. Amúgy ez egy XNA project?
   
Kuz - Törzstag | 4455 hsz       Online status #120950   2009.11.03 13:00 GMT+1 óra  
Feltöltöttem : 61-methodtest.zip
Annyi, hogy mivel nagyon sok minden ki van kommentezve, mert kellene sok content, meg minden, ezért mindent leegyszerűsítettem, de a MethodInfoig most már eljut. Ott kéne valamit ügyködni, hogy hozzá is rendelje azt. Ja, VS2008 kell hozzá.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
bit.0x8000 - Törzstag | 574 hsz       Online status #120947   2009.11.03 12:41 GMT+1 óra  
Idézet
kuzanth :
Amúgy a delegate volt az, amit eddig sosem sikerütlt igazán megértenem.



Olyan, mint a függvénymutató és a láncolt lista keveréke. Asszem.
   
terbed - Tag | 233 hsz       Online status #120946   2009.11.03 12:35 GMT+1 óra  
Na értem, de még most sem értem
Azt hiszem ebbe több időt kell fektetni...
   
Kuz - Törzstag | 4455 hsz       Online status #120945   2009.11.03 12:24 GMT+1 óra  
public delegate void InitDelegate();
public event InitDelegate InitEvent;
Ez a kettő valahogy nagyon hasonló. Amúgy a delegate volt az, amit eddig sosem sikerütlt igazán megértenem.
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
terbed - Tag | 233 hsz       Online status #120942   2009.11.03 11:54 GMT+1 óra  
Na bocsi, hogy közbeszólok Kuzanth.
Nem nagyon akar összeállni a kép az eseményeknél.
Például a következő kódban hol használom a delegatet?
Mert én azt vettem észre, hogy csak az eseményhez rendelek hozzá dolgokat...
Kód:
using System;

namespace program
{
    class Game
    {
        public delegate void InitDelegate();
        public event InitDelegate InitEvent;

        public void Init()
        {
            InitEvent();
        }
    }

    class Player
    {
        public Player(Game game)
        {
            game.InitEvent += Init;
            game.InitEvent += Init2;
        }
        void Init()
        {
            Console.WriteLine("Inicialiálták a játékost");
        }
        void Init2()
        {
            Console.WriteLine("Inicialiálták a játékot");
        }
    }
    static class Program
    {
        static void Main()
        {
           
            Game game = new Game();
            Player player = new Player(game);
            game.Init();

            Console.Read();
        }
    }
}
   
bit.0x8000 - Törzstag | 574 hsz       Online status #120941   2009.11.03 11:45 GMT+1 óra  
kuzanth: Nem tudnál olyan kódot beilleszteni, amiben van pár bedrótozott ilyen MenuStruct, és copy-paste-tel kipróbálható? Vagy hosszú lenne?
   
Kuz - Törzstag | 4455 hsz       Online status #120940   2009.11.03 11:14 GMT+1 óra  
Na, ez a stringből-eventet dolog csak kifog rajtam... Asszem még1x kérem a közönség segítségét.
Vázolom a dolgot :

Leegyszerűsítve ő a Game1 osztályom, és van ott egy TestMethod() metódus (ugye ilyenből lehet akár 100db is, ezért nem akarok if-elni, meg switch-elni ).

Kód:
namespace GalacticWarfare
{
    public class Game1 : Microsoft.Xna.Framework.Game
    {
        public void TestMethod()
        {
        }
    }
}


Ezt a TestMethod()-ot szeretném én egy eventhandlerhez hozzárendelni. Nem tudom miben számíthat, de biztos, ami biztos alapon mutatom a vázát a menü betöltőnek.

Kód:
namespace GalacticWarfare
{
    static class MainMenuLoader
    {
        public static void LoadMenu(...)
        {
           StreamReader m_sReader = new ...

           //Van egy MenuStruct, amibe feltöltöm az adatokat, mert így jobban átlátható,
           //hogy éppen mit is olvasok be. Lényeg, hogy az EventName az, amit fileból
           //beolvasok. Jelen pillanatban ez most a "TestMethod" értéket tartalmazza, és
           //a MethodInfo ahogy látom meg is taálja ezt a metódust.
           MethodInfo mi1 = typeof(Game1).GetMethod(MenuStruct.EventName,
                            BindingFlags.Public | BindingFlags.Instance);

           //Itt jön a lista, és az épp aktuális elem eventhandleréhez akarom így kötni a metódust,
           //viszont elszáll egy "Error binding to target method" üzenettel. Próbáltam már guglizni,
           //eddig nem sok sikerrel.
           p_gMenu.MenuElements[m_iElementCounter].GUIEventHandler +=
                  Delegate.CreateDelegate(typeof(GUIEventHandler), mi1) as GUIEventHandler;

          }
     }
}


Valakinek ötlet, hogy mit szúrok el (azon kívül, hogy C#-ot használok , de ezt a témát ejtsük)?
A memóriám már nem a régi. És ráadásul még a memóriám sem a régi...
Az élet attól szép, hogy bármi megtörténhet. És attól szar, hogy meg is történik...
Ha az egyik szinkronúszó megfullad, mit csinál a többi???

   
M4 - Tag | 187 hsz       Online status #120322   2009.10.27 07:05 GMT+1 óra  
Csak százas timer legyen, és 500 esetén öt esetből négyszer nem csinálsz semmit.

   
Asylum - Törzstag | 5455 hsz       Online status #120317   2009.10.27 06:35 GMT+1 óra  
Na ez müködött, kösz. Most van egy másik problémám, mégpedig a timerekkel (Windows.Forms és System.Timers is ugyanaz).
Ugyebár tetris, szal a lefele gombra gyorsitani kéne, nosza átirom a timer Interval-ját 500 rol 100-ra, felengedéskor meg vissza 500 ra.
Ez addig jól is müködik amig hosszabb ideig tartom lenyomva mint 500. De ha gyorsan elkezdem nyomkodni akkor egyszerüen megáll a timer mert ugylátszik ha átirom az Interval-t akkor reseteli magát. Óriási hiba.
Az AutoReset property nem erre való sajna. Ötlet?
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Asylum - Törzstag | 5455 hsz       Online status #120206   2009.10.26 12:43 GMT+1 óra  
Kösz, megnézem.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Clystron - Tag | 26 hsz       Online status #120201   2009.10.26 11:44 GMT+1 óra  
Idézet
Asylum :
Pff...egyszerübben nem lehet? Hiszen ez c# nem? -.-
Csak annyi kéne h mielött kirajzol egy pixelt a pictureboxba beszorozza egy szinnel.


Color matrix?

Kiemelés a linkről:
Kód:
ColorMatrix colorMatrix = new ColorMatrix(
      new float[][]
      {
         new float[] {.3f, .3f, .3f, 0, 0},
         new float[] {.59f, .59f, .59f, 0, 0},
         new float[] {.11f, .11f, .11f, 0, 0},
         new float[] {0, 0, 0, 1, 0},
         new float[] {0, 0, 0, 0, 1}
      });
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
Asylum - Törzstag | 5455 hsz       Online status #120200   2009.10.26 11:41 GMT+1 óra  
Pff...egyszerübben nem lehet? Hiszen ez c# nem? -.-
Csak annyi kéne h mielött kirajzol egy pixelt a pictureboxba beszorozza egy szinnel.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Clystron - Tag | 26 hsz       Online status #120199   2009.10.26 11:25 GMT+1 óra  
Idézet
MaNiAc :
Magyar nyelvű cikk arról, hogyan használható a C# "scriptnyelvként" gyakorlatilag egy szintén C# alkalmazáson belül.

http://www.softwareonline.hu/Article/View.aspx?id=3293


Itt egy kis olvasnivaló:
[url]http://msdn.microsoft.com/en-us/library/dd233052(VS.100)[/url]
Ne sajnáld a vak embert, aki nem látja e világ látványát, inkább sajnáld magad, mert ő előbb látja meg a megvilágosodás útját.
natív vs managed
   
sirpalee - Tag | 1282 hsz       Online status #120198   2009.10.26 10:58 GMT+1 óra  
foreach pixel in pixels
{
RGB -> HSV
H = Lerp H NEW_H
S = 100 (vagy LERP S NEW_S
HSV -> RGB
}
Draw pixels

a klasszikus colorize (esetleg sat tartható)

De ha csak fekete fehér, akkor R = R, G = 0, B = 0 .
raytraceisten és übermedic
   
Asylum - Törzstag | 5455 hsz       Online status #120197   2009.10.26 10:50 GMT+1 óra  
Van egy fekete-fehér képem, és szeretném ugy kirajzolni, hogy valamilyen szinnel beszorozza az egész képet, pl. pirossal.

Kód:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
    // valamitbeállit (piros)
    // valamitbeállit (Modulate)

    e.Graphics.DrawImage(kep, new Point(0, 0));
}


Van erre valami módszer?
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
MaNiAc - Szerkesztő | 1735 hsz       Online status #119950   2009.10.24 02:33 GMT+1 óra  
Magyar nyelvű cikk arról, hogyan használható a C# "scriptnyelvként" gyakorlatilag egy szintén C# alkalmazáson belül.

http://www.softwareonline.hu/Article/View.aspx?id=3293
Dare to imagine!
http://www.insaneidea.hu
   
M4 - Tag | 187 hsz       Online status #119911   2009.10.23 03:27 GMT+1 óra  
Még lehetne úgy is csinálni, ha nem akarod az adatfájlt fordítás után szerkeszteni, akkor írhatsz egy fordítót rá:
pl.: <size>100</size> -> menü.setSize(100);
<action>ChangeSettings</action> -> menü.Click = ChangeSettings();
És akkor fordítás előtt lefordítod az adatfájlokat.

   
kicsy - Szerkesztő | 4304 hsz       Online status #119889   2009.10.22 05:10 GMT+1 óra  
Idézet
kuzanth :
Ha megadom stringként a nevet (mármint így, hogy "ChangeSetting" ), abból betöltéskor hozzá tudja bindolni a metódust, de ha változóként adom meg, akkor nem. Van különbség?



Persze, hiszen a forráskódban ott van a függvény neve, meg a sztring literál is, fordításkor mindkettő elérhető, és ugyanúgy linkelni tudja, mint egy egyszerű függvényhívásnál. Ha viszont egy változó tartalmáról van szó, ami ugye futásidőben létezik, akkor már bőven fordítás után vagyunk, a függvény csak egy memóriacím ahova ugrik a program minden meghívásakor. A reflection kb azt teszi, hogy készít egy térképet a programodról, így futásidőben tudsz függvényt a nevével hívni.
kicsy ● SilentVertigo Team - project Solarah
http://blog.yscik.com
   
Orphy - Törzstag | 1893 hsz       Online status #119888   2009.10.22 05:02 GMT+1 óra  
Kuz,

itt egy egész pofás megoldás:
http://www.gamedev.net/reference/articles/article2275.asp

Ha végigolvasod, kipróbálod, beépited, akkor a következőt fogod tudni csinálni:
- Lesz egy könnyen használható LUA scriptrendszered, amit máshol is tudsz majd használni
- Ha Lua-ból el akarsz érni egy C#-os függvényt, csak fölé kell tenni egy attributumot.
- Esetedben az eventhandlered hivása annyi lesz, hogy Lua.DoString( "a beolvasott függvényneved, ami fölé beirtál egy LuaFunc attributumot" )

Vigyázat, emlékeim szerint az oldalon található kód egy kicsit bugos, a LuaFunc attributumnál a help szövegeket vagy meg kell adni, vagy ki kell javitani a kódban azt a részt (de ez nem nagy feladat)!
   
Matzi - Szerkesztő | 2521 hsz       Online status #119887   2009.10.22 05:00 GMT+1 óra  
C#ban reflectionnal simán meg lehet hívni függvényt futásidőben összerakott név alapján.
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] > 20 < [25] [30] [35] [40] [45] [46]