Author Topic: mp_levillage  (Read 1153 times)

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« on: August 29, 2007, 02:50:16 PM »






Voila mon travail depuis quelques jours, une map de nuit, manque pratiquement tout, mais jolie. Dites moi ce que vous en pensez, et si vous pouviez me donner un nom ce serait sympa !

Edit : ya aussi des sons d'oiseaux de nuit
« Last Edit: September 02, 2007, 01:31:03 PM by tony123 »
BOOM HEADSHOT !!111one

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #1 on: August 31, 2007, 07:36:39 PM »
Est ce que je devrais assombrir plus ? heure : 23 h
 
BOOM HEADSHOT !!111one

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #2 on: September 02, 2007, 01:31:54 PM »
Ya quelqu'un ? Fait chi*** encore au bar ceux la :D  :D  :D  
BOOM HEADSHOT !!111one

bougrain

  • Apprenti poseur de brushs
  • Posts: 90
mp_levillage
« Reply #3 on: September 05, 2007, 03:35:36 PM »
Je trouve que la lumiere des lampadaires est un peu puissantes sinon le reste c'est bien fait ;)
Toute guerre est toujours basée sur une tromperie.






Slash PowaAaAaAaAaAaAaAaAa

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #4 on: September 08, 2007, 04:04:37 PM »
Ta raison je devrais baisser la valeur light
BOOM HEADSHOT !!111one

Le Touriste

  • Squatteur de forum
  • Posts: 3427
    • http://
mp_levillage
« Reply #5 on: September 09, 2007, 01:50:21 PM »
Map trop carrée : sol plat, murs parfaits, pas même une petite arche, pas même un seul défaut dans le toit de la maison, idem pour les murets.

Je ne veux pas te casser ou insulter ton travail, mais franchement, des maps carrées on en voit depuis que le jeu est sorti et ça gave par manque d'originalité.

N'hésite pas à faire un load terrain pour le sol et triture le à mort. Fais des murs en patch mesh ou en plein de petits polygones déglingués. Ton village n'a pas l'air d'un village de guerre : il est intact. Bousille-le !
« Last Edit: September 09, 2007, 01:50:34 PM by Le Touriste »

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #6 on: September 09, 2007, 04:43:41 PM »
mdr  :lol:  :lol:  :lol:  :lol:  ok mais avant une copie de la map, paske moi, si tu me dit de le bousiller, sa va chier !
BOOM HEADSHOT !!111one

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #7 on: September 26, 2007, 02:14:59 PM »
Voici des nouveaux screens :









J'attends les commentaires :)
« Last Edit: September 26, 2007, 02:15:46 PM by tony123 »
BOOM HEADSHOT !!111one

Tropheus

  • Legomaniaque
  • Posts: 1432
    • http://tropheus.tropheus.free.fr
mp_levillage
« Reply #8 on: September 26, 2007, 02:55:34 PM »
Comme dis la tourista, c'est encore un peu trop carré et surtout beaucoup trop clean....

t'as des maisosn savec des trous dans les murs et pas un seul gravat par terre.

les murs sont explosés et pas une seule marque de brulé....


salis-la et destroye moi tout ça.

TRoph

pour ton sol fait comme le dis eul Touriste fais un terrain avec des creux et des bosses...

pour 23 heures, ton ciel est peut etre un peu lumineux
« Last Edit: September 26, 2007, 02:57:16 PM by Tropheus »




Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #9 on: September 26, 2007, 03:33:48 PM »
ok mais j'ai un probleme, regarde l'avant dernier screen la foret est trop illuminée il faudrait que la lumiere ne fasse pas sa ...
BOOM HEADSHOT !!111one

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #10 on: September 26, 2007, 07:05:39 PM »
j'ai un probleme au niveau script, est ce qu'il y aurait un docteur GSC par ici ?  :)  ?
Voila partie du gsc qui appelle le thread :
Code: [Select]
PrecacheFX()
{
level._effect["feu"] =  loadfx("fx/fire/building_fire_big_tall.efx");
}

jouerfx()
{
feus = getentarray("feu","targetname");
for(i=0;i<feus.size;i++)
{
feus[i] thread fxplaying();
}
}

et voila mon petit thread fxplaying() :

Code: [Select]
fxplaying()
{
maps\mp\_fx::loopfx(level._effect["feu"], self.origin, 1);
}
BOOM HEADSHOT !!111one

Tropheus

  • Legomaniaque
  • Posts: 1432
    • http://tropheus.tropheus.free.fr
mp_levillage
« Reply #11 on: September 27, 2007, 02:02:51 AM »
qu'est ce qu'il ne fait pas ton script?

ya pas de feu?


tente ça a mettre dans ton fichier ma_mapfx.gsc

Code: [Select]
main()
{

PrecacheFX();
jouerFx();

}

PrecacheFX()
{
level._effect["feu"] =  loadfx("fx/fire/building_fire_big_tall.efx");
}

jouerfx()
{
feus = getentarray("feu","targetname");
for(i=0;i<feus.size;i++)
{
feus[i] thread fxplaying();
}
}

si ça marche clique ici tropheus.miniville

++

troph
« Last Edit: September 29, 2007, 01:18:59 AM by Tropheus »




Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #12 on: September 27, 2007, 07:42:18 PM »
En fait c'est mon feu quii n'apparait point du tout :huh:  
BOOM HEADSHOT !!111one

Tropheus

  • Legomaniaque
  • Posts: 1432
    • http://tropheus.tropheus.free.fr
mp_levillage
« Reply #13 on: September 27, 2007, 10:53:51 PM »
t'as essayé le script que je t'ai donné?

t'as cliqué sur mon lien?


troph




Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #14 on: September 28, 2007, 06:28:19 PM »
J'ai cliqué surton lien, mais je vois pas ce que tu as changé  :huh:  
BOOM HEADSHOT !!111one

Tropheus

  • Legomaniaque
  • Posts: 1432
    • http://tropheus.tropheus.free.fr
mp_levillage
« Reply #15 on: September 29, 2007, 01:25:19 AM »
si tu laisse ton gsc comme tu l'avais mis le thread jouerfx n'était jamais lu.

du coup j'ai fais un appel dans le "main" pour qu'il soit lu


++

troph


PS

Tu mets tout ça dans ton fichier ma_mapFx.gsc

et dans dans la partie "main" de ton fichier ma_map.gsc tu n'oublies pas de mettre cette ligne.

 maps\mp\ma_mapFx::main();




Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #16 on: September 29, 2007, 10:44:59 AM »
Bon voila tout mon GSC , j'ai repris des trucs un peu partout, mais le voila
Code: [Select]
main()
{

maps\mp\_load::main();
maps\mp\_tankdrive_gmi::main();
maps\mp\_jeepdrive_gmi::main();

game["allies"] = "american";
game["axis"] = "german";

game["american_soldiertype"] = "airborne";
game["american_soldiervariation"] = "normal";
game["german_soldiertype"] = "german_waffen";
game["german_soldiervariation"] = "normal";

game["attackers"] = "allies";
game["defenders"] = "axis";


thread StartThreads();
}

StartThreads()
{
///////////NORMAL CALLS////
SetupDoorsAndWindows();
precacheFX();
jouerfx();
///////////////////////////

/////////LEVEL THREADS/////
level thread dimensionsmap();
///////////////////////////

////////THREADS//////////
thread sons();
thread getthunder();
/////////////////////////
}

SetupDoorsAndWindows()
{
doors = getentarray("door","targetname");
if(isdefined(doors))
{
for(i=0;i<doors.size;i++)
{
doors[i] thread SetupDoor("door");
}
}
windows = getentarray("window","targetname");
if(isdefined(windows))
{
for(i=0;i<windows.size;i++)
{
windows[i] thread SetupDoor("window");
}
}
}

SetupDoor(soundpfx)
{
if(!isdefined(self.degrees))
{
self.degrees = 90;
}
if(self.degrees == 0)
{
self.degrees = 90;
}
if(!isdefined(self.time))
{
self.time = 1000;
}
if(!isdefined(self.spawnflags))
{
self.spawnflags = 0;
}
left = getent(self.target, "targetname");
right = getent(left.target, "targetname");
left thread TriggerDoor(self.degrees, self, right, soundpfx);
right thread TriggerDoor(0 - self.degrees, self, left, soundpfx);
}

TriggerDoor(angle, door, trig, soundpfx)
{
time = door.time / 1000;
while(1)
{
self waittill("trigger", other);
dme = distance(other getOrigin(), self getOrigin());
dmh = distance(other getOrigin(), trig getOrigin());
if(dme > dmh) {
nangle = 0 - angle;
} else {
nangle = angle;
}
trig triggerOff();

door playsound("open_" + soundpfx);

door rotateto((0, nangle, 0), time, time / 2, time / 2);
door waittill("rotatedone");
self waittill("trigger");
door playsound("close_" + soundpfx);
door rotateto((0, 0, 0), time, time / 2, time / 2);
door waittill("rotatedone");
door playsound("slam_" + soundpfx);
trig triggerOn();
}
}

triggerOff()
{
if (!isdefined (self.realOrigin))
self.realOrigin = self.origin;

if (self.origin == self.realorigin)
self.origin += (0, 0, -10000);
}

triggerOn()
{
if (isDefined (self.realOrigin) )
self.origin = self.realOrigin;
}

sons()
{
camion = getent ("half", "targetname");
camion playloopsound("son_camion");

oiseau_1 = getent ("ois1", "targetname");
oiseau_2 = getent ("ois2", "targetname");
oiseau_3 = getent ("ois3", "targetname");
oiseau_4 = getent ("ois4", "targetname");
oiseau_5 = getent ("ois5", "targetname");

while(1)
{
tps = randomint(3);
temps = randomint(5);

oiseau_1 playsound("son_oiseau_" + tps);
wait 2;
oiseau_2 playsound("son_oiseau_" + tps);
wait 2;
oiseau_3 playsound("son_oiseau_" + tps);
wait 1;
oiseau_4 playsound("son_oiseau_" + tps);
wait 1;
oiseau_5 playsound("son_oiseau_" + tps);

if(temps==0)
{
temps++;
}

wait temps;
}
}

PrecacheFX()
{
level._effect["feu"] =  loadfx("fx/fire/building_fire_big_tall.efx");
level._effect["cloudflash1"] = loadfx ("fx/atmosphere/cloudflash1.efx");
}

jouerfx()
{
feus = getentarray("feu","targetname");
for(i=0;i<feus.size;i++)
{
feus[i] thread fxplaying();
}
}

dimensionsmap()
{
// Donne entitées
entitytypes = getentarray();

// Initialisation
iMaxX = entitytypes[0].origin[0];
iMinX = iMaxX;
iMaxY = entitytypes[0].origin[1];
iMinY = iMaxY;
iMaxZ = entitytypes[0].origin[2];
iMinZ = iMaxZ;

// Boucle
for(i = 1; i < entitytypes.size; i++)
{
  // Find max values
  if (entitytypes[i].origin[0]>iMaxX)
   iMaxX = entitytypes[i].origin[0];

  if (entitytypes[i].origin[1]>iMaxY)
   iMaxY = entitytypes[i].origin[1];

  if (entitytypes[i].origin[2]>iMaxZ)
   iMaxZ = entitytypes[i].origin[2];

  // Find min values
  if (entitytypes[i].origin[0]<iMinX)
   iMinX = entitytypes[i].origin[0];

  if (entitytypes[i].origin[1]<iMinY)
   iMinY = entitytypes[i].origin[1];

  if (entitytypes[i].origin[2]<iMinZ)
   iMinZ = entitytypes[i].origin[2];
}

// Get middle of map
iX = (int)(iMaxX + iMinX)/2;
iY = (int)(iMaxY + iMinY)/2;
iZ = (int)(iMaxZ + iMinZ)/2;

      // Find iMaxZ
iTraceend = iZ;
iTracelength = 50000;
iTracestart = iTraceend + iTracelength;
trace = bulletTrace((iX,iY,iTracestart),(iX,iY,iTraceend), false, undefined);
if(trace["fraction"] != 1)
{
  iMaxZ = iTracestart - (iTracelength * trace["fraction"]) - 100;
}

// Find iMaxX
iTraceend = iX;
iTracelength = 100000;
iTracestart = iTraceend + iTracelength;
trace = bulletTrace((iTracestart,iY,iZ),(iTraceend,iY,iZ), false, undefined);
if(trace["fraction"] != 1)
{
  iMaxX = iTracestart - (iTracelength * trace["fraction"]) - 100;
}

// Find iMaxY
iTraceend = iY;
iTracelength = 100000;
iTracestart = iTraceend + iTracelength;
trace = bulletTrace((iX,iTracestart,iZ),(iX,iTraceend,iZ), false, undefined);
if(trace["fraction"] != 1)
{
  iMaxY = iTracestart - (iTracelength * trace["fraction"]) - 100;
}

// Find iMinX
iTraceend = iX;
iTracelength = 100000;
iTracestart = iTraceend - iTracelength;
trace = bulletTrace((iTracestart,iY,iZ),(iTraceend,iY,iZ), false, undefined);
if(trace["fraction"] != 1)
{
  iMinX = iTracestart + (iTracelength * trace["fraction"]) + 100;
}

// Find iMinY
iTraceend = iY;
iTracelength = 100000;
iTracestart = iTraceend - iTracelength;
trace = bulletTrace((iX,iTracestart,iZ),(iX,iTraceend,iZ), false, undefined);
if(trace["fraction"] != 1)
{
  iMinY = iTracestart + (iTracelength * trace["fraction"]) + 100;
}

// Find iMinZ
iTraceend = iZ;
iTracelength = 50000;
iTracestart = iTraceend - iTracelength;
trace = bulletTrace((iX,iY,iTracestart),(iX,iY,iTraceend), false, undefined);
if(trace["fraction"] != 1)
{
  iMinZ = iTracestart + (iTracelength * trace["fraction"]) + 100;
}
level.vMax = (iMaxX, iMaxY, iMaxZ);
level.vMin = (iMinX, iMinY, iMinZ);
}

getthunder()
{
//on va ici donner un resultat aleatoire des coordonées
x = level.vMax[0];
y = level.vMax[1];
z = level.vMax[2];
while(1)
{
tx = randomint(x);
ty = randomint(y);

temp = spawn("script_model");
temp.origin = (tx,ty,z);
temp drawlightning();
temp delete();
wait 5;
}
}


drawlightning()
{
playfx(level._effect["cloudflash1"], self.origin, 1);
}

fxplaying()
{
maps\mp\_fx::loopfx(level._effect["feu"], self.origin, 1);
}

Je n'ai pas mon eclair non plus qui marche
« Last Edit: September 29, 2007, 10:45:58 AM by tony123 »
BOOM HEADSHOT !!111one

Caskou

  • Actionnaire chez un fabricant de claviers
  • Posts: 1596
    • http://
mp_levillage
« Reply #17 on: September 30, 2007, 09:49:29 AM »
Quote
si ça marche clique ici tropheus.miniville

++

troph
T'es énorme Troph

 :lol:  

Tony

  • Legomaniaque
  • Posts: 1178
    • http://rpgclan-team.omivu.net
mp_levillage
« Reply #18 on: October 06, 2007, 03:45:03 PM »
Personne n'a d'idées ?
BOOM HEADSHOT !!111one