Affenpuzzle/Spiel
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
== Das Affenpuzzle (Hexenpuzzle)
Legen Sie die Karten in einem Feld 3x3 Karten so, dass alle Teile zusammenpassen.
Auf Karten Klicken, um sie zu drehen. Drag und Drop, um sie zu verschieben.
<html>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js" integrity="sha512-uto9mlQzrs59VwILcLiRYeLKPPbS/bT71da/OEBYEwcdNUk8jYIy+D176RYoop1Da+f9mvkYrmj5MCLZWEtQuA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" integrity="sha512-aOG0c6nPNzGk+5zjwyJaoRUgCdOrfSDhmMID2u4+OIslr0GjpLKo7Xm0Ao3xmpM4T8AmIouRkqwj1nrdVsLKEQ==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<style>
.card {
position:absolute;
width:128px;
height:128px;
border:1px solid black;
background-image:url(https://programmingwiki.de/images/5/50/Admin_Hexenpuzzle.png);
background-size: 310% 310%;
box-shadow:2px 2px 8px rgba(0,0,0,0.2);
flex-shrink:0;
cursor:pointer;
}
.card0 {
left:0;
top:0;
background-position: 0.5% 1%;
}
.card1 {
left:128px;
top:0;
background-position: 49.5% 1%;
}
.card2 {
left:256px;
top:0;
background-position: 98% 1%;
}
.card3 {
background-position: 0.5% 49.5%;
left:0;
top:128px;
}
.card4 {
background-position: 49.5% 49.5%;
left:128px;
top:128px;
}
.card5 {
background-position: 98% 49.5%;
left:256px;
top:128px;
}
.card6 {
background-position: 0.5% 98%;
left:0;
top:256px;
}
.card7 {
background-position: 49.5% 98%;
left:128px;
top:256px;
}
.card8 {
background-position: 98% 98%;
left:256px;
top:256px;
}
.card.dragging {
box-shadow:4px 4px 10px rgba(0,0,0,0.5);
}
.card.rotate0 {
}
.card.rotate90 {
transform:rotate(90deg);
}
.card.rotate180 {
transform:rotate(180deg);
}
.card.rotate270 {
transform:rotate(270deg);
}
.containerCards{
position:relative;
background:#f3f3f3;
border:1px solid black;
width:100%;
height:800px;
display:flex;
flex-wrap:wrap;
}
</style>
<div class="containerCards">
<div class="card card0 rotate0"></div>
<div class="card card1 rotate0"></div>
<div class="card card2 rotate0"></div>
<div class="card card3 rotate0"></div>
<div class="card card4 rotate0"></div>
<div class="card card5 rotate0"></div>
<div class="card card6 rotate0"></div>
<div class="card card7 rotate0"></div>
<div class="card card8 rotate0"></div>
</div>
<script>
$('.card').draggable({ containment: "parent", grid: [ 32, 32 ],
start: function() { $(this).addClass("dragging");},
stop: function() { $(this).removeClass("dragging");},
drag: function(e, ui) {
}
});
$('.card').on('mousedown', function(event) {
$('.card').css('z-index','1');
$( this ).css('z-index','1000');
});
$('.card').on('click', function(event) {
if($(this).hasClass("dragging")) return;
if($(this).hasClass("rotate0"))
$(this).removeClass("rotate0").addClass("rotate90");
else
if($(this).hasClass("rotate90"))
$(this).removeClass("rotate90").addClass("rotate180");
else
if($(this).hasClass("rotate180"))
$(this).removeClass("rotate180").addClass("rotate270");
else
if($(this).hasClass("rotate270"))
$(this).removeClass("rotate270").addClass("rotate0");
});
</script>
</html>