ID:165956
 
I was thinking (why is everyone suddenly looking so shocked?).

We all know how to warp people using a portal that they can walk onto and it takes them elsewhere, but how about this? A portal which they can SEE though BEFORE they've gon though it. I mean that instead of there being black where the opacity blocks out the view there is what you'd see there if you were on the other side of the portal.

I was thinking that this could be accoplished by adding the icons onto the usr.client's view. I was wondering if anyone knows how to do this.
Anyone?
http://developer.byond.com/hub/Shadowdarke/OneWayViewDemo

Is this something akin to your question?

- GhostAnime
In response to GhostAnime
Sort of, but instead of seeing what is onthe other side of those friendly little red arrows I want you to see the the other side of where you'd end up if you walk onto the portal that teleports you elsewhere.

If only I could describe things better......
In response to Atomixkid
I assume you mean a portal like on Prey, Narbacular Drop, or Portal (look up the last two if you don't know them)?
In response to Popisfizzy
YEYE!
Like in portal!

http://youtube.com/watch?v=if3Qv2tHyfA
(Yes it is a real game, Mecha Destroyer JD)

If I can accomplish this then I can make portal for BYOND! :D
In response to Atomixkid
Depending how OpenGL will work in BYOND, you may be able to do it in 4.0. Otherwise, on here, you'll have to make all your own portal icons, unless you want to have blocky portals (which, we all know, would look awesome*).

*Not really. Not at all in fact.
In response to Atomixkid
Atomixkid wrote:
YEYE!
Like in portal!

http://youtube.com/watch?v=if3Qv2tHyfA


Wow..THats a real game? Cool..0_0
In response to Popisfizzy
I think oyu missunderstood me (as I did a few times). A wall blocks your veiw with blackness. I want to replace that blackness with the same icons that are on the corrosponding squares to those which are reletive to you if you were at a cirtain location. Including an update incase you could be able to see someone else walking past via the portal.

@=you

#=normal view

~=portal

*=where blackness would normaly be but instead you can see though the portal

###########
###########
#####@~****
###########
###########

########***
######~****
#####@~****
######~****
########***
In response to Atomixkid
Let me simplify my question. How do I find all the tiles that a wall blocks from the user?
In response to Atomixkid
The simplest way(absolute last hope maybeh) would be to program just the portal with the same icons as the area..x.x..But I'm sure that you're trying to make it a bit cleaner.
In response to Atomixkid
You'd need a for loop, and something like block() that gets all atoms. Luckily, I just happen to have that =P :
proc/section(atom/low,atom/high)
if(!low) low = locate(1,1,1)
if(!high) high = locate(low.x,low.y,low.z)
var
list
atoms = list()
tmp_list = list()
cx = low.x
cy = low.y
cz = low.z
matching = 0
while(cz <= high.z)
if(cx > high.x)
cx = low.x
cy ++
if(cy > high.y)
cy = low.y
cz ++
if(cz > high.z) break
for(var/atom/a in locate(cx,cy,cz)) tmp_list += a
for(var/turf/t in block(locate(cx,cy,cz),locate(cx,cy,cz))) tmp_list += t
for(var/area/ar)
matching = 0
for(var/a in tmp_list)
if(!(a in ar.contents)) break
else matching ++
if(matching == tmp_list.len)
tmp_list += ar
break
atoms += tmp_list
cx ++
return atoms
In response to Mecha Destroyer JD
I think I know what you meen. If you look thru the portal you see what you are going to teleport to. Is that correct?
In response to Revojake
That is what I mean.
In response to Popisfizzy
Popisfizzy, thanks for the code but wont that just list all the things you can see?
I just want it to list all the tiles you CAN'T see because a certain object is in the way.
In response to Atomixkid
The arguments, low and high, are any two points on the map. They can be the area you want to show, if you wish.
In response to Popisfizzy
But I need a way to work out what tiles I want to change first. I only want to add onto where the opacity object blocks view.
In response to Atomixkid
range(n) - view(n) will give you all the tiles within n squares that the player can't see.

Unfortunately, that won't distinguish between 'blocked by portal' tiles and 'blocked by wall' tiles.
In response to Atomixkid
:P I know this isnt of any help but heres a video of a portal sim I made in DBP... http://s3.photobucket.com/albums/y84/ RUCCUS/?action=view¤t=pOrtal2.flv&refPage=all&imgAnch= imgAnch48
In response to Jp
If I know the formula/algaritham that BYOND uses to know what tiles to block view from then that may help. Anyone know?
In response to Atomixkid
Anyone at all?
Please?
Page: 1 2