[E2] Simon Say

Le coin Bla-Bla
Répondre
Avatar de l’utilisateur
aomtte
Vieux de la vieille
Messages : 1184
Inscription : 02 juin 2010, 11:28
Steam ID : Dus Jean-Claude
uselesspoints 32
usefullpoints 18

[E2] Simon Say

Message par aomtte »

Plop

Vu que c'est à la mode de faire des petits jeux sur Gmod en E2
(Comme les chaises musicales que j'ai faîtes à labod ou le Gmine de carl)

Je fais un petit jeu.

Le SIMON SAY !

Code de l'E2 qui servira de déco au simon say.
Elle est optimisé et ne dépasse pas les 10 OPS, malgré le fait qu'elle change de couleur et fasse des joli truc en attendant un joueur.

Code : Tout sélectionner

@name Simon say
@inputs EGP:wirelink
@outputs 
@persist Delay Count Count2
@trigger 

if (first()) 
{   
    Delay = 200
    
    EGP:egpClear()
    EGP:egpBox(1,vec2(106,106),vec2(300,300)) EGP:egpColor(1,vec(0,100,0))
    EGP:egpBox(2,vec2(406,106),vec2(300,300)) EGP:egpColor(2,vec(100,0,0))
    EGP:egpBox(3,vec2(406,406),vec2(300,300)) EGP:egpColor(3,vec(0,100,100))
    EGP:egpBox(4,vec2(106,406),vec2(300,300)) EGP:egpColor(4,vec(100,100,0))
    EGP:egpCircleOutline(5,vec2(256,256),vec2(350,350)) EGP:egpSize(5,200) EGP:egpColor(5,vec(0,0,0))
    EGP:egpCircle(6,vec2(256,256),vec2(100,100)) EGP:egpSize(6,50) EGP:egpColor(6,vec(0,0,0))
    EGP:egpBox(7,vec2(256,256),vec2(50,512)) EGP:egpColor(7,vec(0,0,0))
    EGP:egpBox(8,vec2(256,256),vec2(512,50)) EGP:egpColor(8,vec(0,0,0))
    EGP:egpText(9,"Simon",vec2(256,236)) EGP:egpAlign(9,1,1) EGP:egpSize(9,60)
    EGP:egpText(10,"By Aomtte",vec2(256,276)) EGP:egpAlign(10,1,1) EGP:egpSize(10,40) EGP:egpColor(10,vec(75,75,75))
    
    timer("Round1",Delay)
}
    
if (clk("Round1")) { if (Count >= 5) { EGP:egpColor(4,vec(100,100,0)) timer("RoundType2-1",Delay*2) } else { Count2 = 0 EGP:egpColor(4,vec(100,100,0)) EGP:egpColor(1,vec(0,255,0)) timer("Round2",Delay) } }
if (clk("Round2")) { EGP:egpColor(1,vec(0,100,0)) EGP:egpColor(2,vec(255,0,0)) timer("Round3",Delay) }
if (clk("Round3")) { EGP:egpColor(2,vec(100,0,0)) EGP:egpColor(3,vec(0,255,255)) timer("Round4",Delay) }
if (clk("Round4")) { Count++ EGP:egpColor(3,vec(0,100,100)) EGP:egpColor(4,vec(255,255,0)) timer("Round1",Delay) }
if (clk("RoundType2-1")) { if (Count2 >= 3) { Count = 0 timer("Round1",Delay) } else { EGP:egpColor(1,vec(0,255,0)) EGP:egpColor(2,vec(255,0,0)) EGP:egpColor(3,vec(0,255,255)) EGP:egpColor(4,vec(255,255,0)) timer("RoundType2-2",Delay*2) } }
if (clk("RoundType2-2")) { Count2++ EGP:egpColor(1,vec(0,100,0)) EGP:egpColor(2,vec(100,0,0)) EGP:egpColor(3,vec(0,100,100)) EGP:egpColor(4,vec(100,100,0)) timer("RoundType2-1",Delay*2) }
Avatar de l’utilisateur
Veganos / Océane
Colon
Messages : 1707
Inscription : 28 avr. 2012, 09:25
Nom RP : ...
Steam ID : ...
uselesspoints 9

Re: [E2] Simon Say

Message par Veganos / Océane »

Va si jprend les code et je remet sa marche :D ? :hurrhur:

Crawling in my Crawl THESE CRAWLS THEY WILL NOT CRAWL

Avatar de l’utilisateur
aomtte
Vieux de la vieille
Messages : 1184
Inscription : 02 juin 2010, 11:28
Steam ID : Dus Jean-Claude
uselesspoints 32
usefullpoints 18

Re: [E2] Simon Say

Message par aomtte »

Si tu le relies à une EGP bah oui :hurrsoft:

J'ai juste trouvé que c'était amazing de faire ça en - de 12 OPS

EDIT: j'ai ajouté du son :D
Ext4z
Administrateur Forum
Messages : 3229
Inscription : 04 avr. 2012, 03:05
Nom RP : Sacha DeMowawanoGawe
Steam ID : STEAM_0:1:20593524
Localisation : Dans plop, tout simplement.
uselesspoints 2
usefullpoints 1
Contact :

Re: [E2] Simon Say

Message par Ext4z »

ouai ;D 12 ops quand la séquence a finis !
Avatar de l’utilisateur
aomtte
Vieux de la vieille
Messages : 1184
Inscription : 02 juin 2010, 11:28
Steam ID : Dus Jean-Claude
uselesspoints 32
usefullpoints 18

Re: [E2] Simon Say

Message par aomtte »

Je monte à 25 OPS sur mon E2 qui réduit les OPS de l'autre, ça ne montera pas plus haut pour celle qui réduit, et qui possède un code qui tient en à peine quelques lignes.

Sur l'E2 principale, je ne dépasse pas les 20 OPS.

Code de l'E2 de réduction d'OPS :
@name Simon Say OPS reducer
@inputs EGP:wirelink
@outputs Ecran:wirelink Out
@persist
@trigger

runOnTick(1)

Out = EGP["User",entity]:keyUse()

Ecran = EGP
Système de jeu :
(En cour de création, pas long à faire ;))
if (clk("DefVarGame")) { Partie:setNumber(Count, random(1,4)) timer("showState",500) }

if (clk("showState"))
{
if (Partie:number(Count) == 1) { }
if (Partie:number(Count) == 2) { }
if (Partie:number(Count) == 3) { }
if (Partie:number(Count) == 4) { }
}
Répondre