Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Mini oyun yazılımı


masa

Öne çıkan mesajlar

Şöyle birşey istiyorum. blackjack oyunu olucak pc üzerinden uygulanan. Online olmayacak. Oyun hamleleri kayıt altına alınacak. Oyun sonunda hangi durumda oyuna girmiş hangisinde girmemiş görebilmem mümkün olacak. Birde kağıt ve para kazanma görseli olacak. Böyle birşeyin maliyeti ne kadar olur?
Link to comment
Sosyal ağlarda paylaş

BabacumMostors said:

kendin de ilkel olarak yapabilirsina slında

https://www.codecademy.com/courses/blackjack-part-1/0/1

tabii bi java script ben c# için olanını arayacam şidmi bir de, basit bir sey isini gorurse bi kurcalayayim

gorselleri de openhameart.com dan free to use olanlari aliriz


Yaparsin bence sen bunu. Hic naza cekme, direkt giris.
Link to comment
Sosyal ağlarda paylaş

aklimda bi su skor tutma meselesini cozersem irisecem zaten oynun genel mantigi dahilinde hazir kod var benim her el masada oyuncu onunde acik olan kartlarin ve oyuncunun verdigi kararlarin kaydini tutacak olan bir gamemanager classi yazmam lazim

ki yazarim da ama simdi degil simdi burnum akiyor basim agriyor hastayim eheh ama yapacam ben bunu
Link to comment
Sosyal ağlarda paylaş

tam oyun bitti şimdi ama görseli falan yok aha burda. kısa bir debug sürecinden de geçirdim olmuş gibi. eve gidiyorum artık işim var gücüm var çalışcam daha spora falan gitcem hey allahım ya.



function Hand(){
var cards=new Array();
cards[0]=deal();
cards[1]=deal();

this.getHand=function(){return cards};

this.score=function()
{
sum=0;
number_of_aces=0;
length=cards.length;
for(i=0; i<length; i++)
{
sum=sum+cards[i].getNumber();
if(cards[i].getNumber()==11)number_of_aces=number_of_aces+1;
}

i=0;
while(sum>21 && number_of_aces!==0 && i <length)
{

if(cards[i].getNumber()==11)sum=sum-10;
i=i+1;

}

return sum;
}

this.printHand=function()
{
length=cards.length;
handstring=" hand is ";

for(i=0; i<length; i++)
{

if(i<length-1)handstring=handstring+cards[i].getNumber().toString()+" of suit "+cards[i].getSuit().toString()+" and ";

else handstring=handstring+cards[i].getNumber().toString()+" of suit "+cards[i].getSuit().toString()+". ";


}

return handstring;
}


this.hitMe=function()
{
cards.push(deal());
}

}


// Card Constructor
function Card(s,n){
var suit=s;
var number=n;

this.getNumber=function(){return number;}
this.getSuit=function(){return suit;}
this.getValue=function()
{
if(number>10||number===0)return 10;
else if (number==1)return 11;
else return number;

}


}

function deal()
{
suit=Math.floor(Math.random() * 4 + 1);
number=Math.floor(Math.random() * 13 + 1);

return new Card(suit,number);
}

function playAsDealer()
{
dealerHand= new Hand();
while(dealerHand.score()<17)dealerHand.hitMe();

return dealerHand;

}

function playAsUser()
{
userHand= new Hand();
decision=true;
while(decision===true)
{

decision=confirm("Your "+userHand.printHand()+"Do you want one more card?");

console.log("Decision is "+decision);

if(decision ===true)userHand.hitMe();
}

return userHand;


}

function declareWinner(userHand, dealerHand)
{
if(userHand.score()>21)console.log("Dealer wins");

else if(userHand.score()>dealerHand.score())console.log("User wins");

else if(userHand.score()===dealerHand.score())console.log("It is a tie.");

else console.log("Dealer wins");


}

function playGame()
{
console.log("nn Playing new game. nn ");

userHand=playAsUser();
dealerHand=playAsDealer();
console.log("Player's "+userHand.printHand());

console.log("with score "+userHand.score());

console.log("Dealer's "+dealerHand.printHand());
dealerHand.printHand();
console.log("with score "+dealerHand.score());

declareWinner(userHand,dealerHand);



}

playGame();



Link to comment
Sosyal ağlarda paylaş

Cok gec yoldaydim. Yanliz bir seyi fark ettim yukarda bazi arrayleri italic tagi ile ayni olacak sekilde isimlendirdigim icin (koseli parantez i koseli parantez yani) onlar da cikmamis onlari j`ye cevirdim -_-



function Hand(){
var cards=new Array();
cards[0]=deal();
cards[1]=deal();

this.getHand=function(){return cards};

this.score=function()
{
sum=0;
number_of_aces=0;
length=cards.length;
for(j=0; j<length; j++)
{
sum=sum+cards[j].getNumber();
if(cards[j].getNumber()==11)number_of_aces=number_of_aces+1;
}

j=0;
while(sum>21 && number_of_aces!==0 && j <length)
{

if(cards[j].getNumber()==11)sum=sum-10;
j=j+1;

}

return sum;
}

this.printHand=function()
{
length=cards.length;
handstring=" hand is ";

for(j=0; j<length; j++)
{

if(j<length-1)handstring=handstring+cards[j].getNumber().toString()+" of suit "+cards[j].getSuit().toString()+" and ";

else handstring=handstring+cards[j].getNumber().toString()+" of suit "+cards[j].getSuit().toString()+". ";


}

return handstring;
}


this.hitMe=function()
{
cards.push(deal());
}

}


// Card Constructor
function Card(s,n){
var suit=s;
var number=n;

this.getNumber=function(){return number;}
this.getSuit=function(){return suit;}
this.getValue=function()
{
if(number>10||number===0)return 10;
else if (number==1)return 11;
else return number;

}


}

function deal()
{
suit=Math.floor(Math.random() * 4 + 1);
number=Math.floor(Math.random() * 13 + 1);

return new Card(suit,number);
}

function playAsDealer()
{
dealerHand= new Hand();
while(dealerHand.score()<17)dealerHand.hitMe();

return dealerHand;

}

function playAsUser()
{
userHand= new Hand();
decision=true;
while(decision===true)
{

decision=confirm("Your "+userHand.printHand()+"Do you want one more card?");


if(decision ===true)userHand.hitMe();
}

return userHand;


}

function declareWinner(userHand, dealerHand)
{
if(userHand.score()>21)console.log("Dealer wins");

else if(userHand.score()>dealerHand.score())console.log("User wins");

else if(userHand.score()===dealerHand.score())console.log("It is a tie.");

else console.log("Dealer wins");


}

function playGame()
{
console.log("nn Playing new game. nn ");

userHand=playAsUser();
dealerHand=playAsDealer();
console.log("Player's "+userHand.printHand());

console.log("with score "+userHand.score());

console.log("Dealer's "+dealerHand.printHand());
dealerHand.printHand();
console.log("with score "+dealerHand.score());

declareWinner(userHand,dealerHand);



}

playGame();



Link to comment
Sosyal ağlarda paylaş

di said:

Unity + Unity asset store en rahati olur sanirim.

edit : JS imis yukardaki. Dumduz HTML + herhangi bir yerden bulunma asset'ler de is gorur gibi.


js evet babacumun verdiği linkten yaptım zaten. ama js şart değil yani js ilk defa kullandım, genelde c veya matlab kullanıyorum. da tam anlamadım html ile nasıl grafik ekleniyor javaya? bir library falan mı var? unity hangi dil ile çalışıyor? googledan da bakabilirim tabi ama hazır bilen varken burdan belki kaynak da öğrenirim :p
Link to comment
Sosyal ağlarda paylaş

Javascript'e Java demiyoruz abi. Tenhaya cekip, hic yemedigin dayagi atarlar aman diyim.

Hangi platformda calistiracagina gore degisiyor pek tabi ama genel olarak browser ya da bir browser component icinde calisacagini dusunursek, en olasi cevap HTML + canvas/webgl olur.

Unity JS destekliyor bu arada ama biraz oynanmis bi JS zira eski ES versiyonlarinda class yarattirip extend ettirmeleri gerekiyordu adamlarin, haliyle beri taraflarindan syntax eklemisler, o yuzden pek tercih edilesi degil. Unity ile bisey yapacaksan C# ile gitmek en iyisi gibi.
Link to comment
Sosyal ağlarda paylaş

Biraz cilaladım nümerik olarak söylenen şeyleri kartların ismine çevirdim, bir de eski versiyonda desteden kart eksiltme yapmayı unutmuşum onu yaptım ve de kritik fonksiyonları privacy hede hödö yaptım.




function numberToType(number)
{
if(number===13)return "King";
else if(number===12)return "Queen";
else if(number===13)return "Jack";
else if(number===0)return "Ace";
else return number.toString();
}

function suitToType(number)
{
if(number===1)return "Clubs";
else if(number===2)return "Diamonds";
else if(number===3)return "Hearts";
else if(number===4)return "Spades";
}


function Deck(){
var cardDeck=new Array(52);
var cardIndex=0;
var j,l;



for(j=0; j<52; j++)
{
cardDeck[j]=new Card(Math.floor((j)/13)+1,Math.floor((j)%13+1));
}





var printDeck=function()
{
for(k=0; k<52; k++)
{
window.alert("Card "+(k+1)+": "+numberToType(cardDeck[k].getNumber())+" of "+suitToType(cardDeck[k].getSuit()));
}


}

this.askForShuffle=function()
{
return shuffleDeck;
}

var shuffleDeck=function()
{
for(var l=1; l<5; l++){
for (var k = cardDeck.length - 1; k > 0; k--)
{
var j = Math.floor(Math.random() * (k + 1));
var temp = cardDeck[k];
cardDeck[k] = cardDeck[j];
cardDeck[j] = temp;
}
}
}



this.askForNextCard =function()
{
return nextCard;
}

var nextCard=function()
{

if(cardIndex<52)
{
tempcard=cardDeck[cardIndex];
cardIndex=cardIndex+1;
return tempcard;
}


}





}

function Hand(casinoDeck){
var cards=new Array();
var j;
var nextCard;

nextCard=casinoDeck.askForNextCard();


cards[0]=nextCard();
cards[1]=nextCard();


this.getHand=function(){return cards};

this.calculateScore=function()
{
return score;
}

var score=function()
{
sum=0;
number_of_aces=0;
length=cards.length;
for(j=0; j<length; j++)
{
sum=sum+cards[j].getNumber();
if(cards[j].getNumber()==11)number_of_aces=number_of_aces+1;
}

j=0;
while(sum>21 && number_of_aces!==0 && j <length)
{

if(cards[j].getNumber()==11)sum=sum-10;
j=j+1;

}

return sum;
}

this.printHand=function()
{
length=cards.length;
handstring=" hand is ";
var type;
var suit;
var j;

for(j=0; j<length; j++)
{
type=numberToType(cards[j].getNumber());
suit=suitToType(cards[j].getSuit());

if(j<length-1)handstring=handstring+type+" of "+suit+" and ";

else handstring=handstring+type+" of "+suit+". ";


}

return handstring;
}

this.tellDealerToGiveACard=function()
{
return hitMe;
}

var hitMe=function(casinoDeck)
{
var nextCard;

nextCard=casinoDeck.askForNextCard();

cards.push(nextCard());
}

}


// Card Constructor
function Card(s,n){
var suit=s;
var number=n;

this.getNumber=function(){return number;}
this.getSuit=function(){return suit;}
this.getValue=function()
{
if(number>10||number===0)return 10;
else if (number==1)return 11;
else return number;

}


}


function playAsDealer(casinoDeck)
{
var dealerHand;
var takeACard;
var dealerScore;

dealerHand= new Hand(casinoDeck);
dealerScore=dealerHand.calculateScore();
takeACard = dealerHand.tellDealerToGiveACard();

while(dealerScore()<17)takeACard(casinoDeck);

return dealerHand;

}

function playAsUser(casinoDeck)
{

var userHand;
var numberOfCards=0;
var decision;
var giveACard;

userHand= new Hand(casinoDeck);
giveACard=userHand.tellDealerToGiveACard();

decision=true;
while(decision===true && numberOfCards<52)
{

decision=confirm("Your "+userHand.printHand()+"Do you want one more card?");


if(decision ===true)giveACard(casinoDeck);

numberOfCards=numberOfCards+1;


}

if(numberOfCards===52)window.alert("You withdrew all the cards!");

return userHand;


}

function declareWinner(userHand, dealerHand)
{
var userScore;
var dealerScore;

userScore=userHand.calculateScore();
dealerScore=dealerHand.calculateScore();


if(userScore()>21){
if(dealerScore()>21) window.alert("It's a tie.");
else window.alert("You lose.");
}

else if(dealerScore()>21)window.alert("You win.");

else if(userScore()>dealerScore())window.alert("You win.");

else if(userScore()===dealerScore())window.alert("It is a tie.");

else window.alert("You lose.");


}

function playGame()
{
window.alert("nn Playing new game. nn ");

var casinoDeck;
var shuffle;
var userScore;
var dealerScore;
var userHand;
var dealerHand;



casinoDeck=new Deck();
shuffle=casinoDeck.askForShuffle();
shuffle();
userHand=playAsUser(casinoDeck);

casinoDeck=new Deck();
shuffle=casinoDeck.askForShuffle();
shuffle();

dealerHand=playAsDealer(casinoDeck);

userScore=userHand.calculateScore();
dealerScore=dealerHand.calculateScore();

window.alert("Player's "+userHand.printHand()+"Player has score "+userScore());

window.alert("Dealer's "+dealerHand.printHand()+"Dealer has score "+dealerScore());


declareWinner(userHand,dealerHand);



}


playGame();





Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...